返回首页

gbase数据、南大通用产品文档:GBase8sbyfill() 函数

更新日期:2024年09月11日

byfill() 函数以一个字符填充指定的区域。

GBase 8s ESQL/C 编程指南
南大通用数据技术股份有限公司
- 616 -

语法
void byfill(to, length, ch)
char *to;
mint length;
char ch;
to
指向您想要 byfill() 填充的内存区域的第一个字节的指针。
length
您想要 byfill() 在该区域内重复该字符的次数。
ch
您想要 byfill() 用于填充该区域的字符。
重要: 请注意,不要重写您想要 byfill() 填充的区域相邻的内存区域。

示例

此样例程序位于 demo 目录中的 byfill.ec 文件中。
/*
* byfill.ec *

The following program shows the results of three byfill() operations on an area that is
initialized to x's.
*/

#include

main()
{
static char area[20] = "xxxxxxxxxxxxxxxxxxx";

printf("BYFILL Sample ESQL Program running.\n\n");

printf("String = %s\n", area);

GBase 8s ESQL/C 编程指南
南大通用数据技术股份有限公司
- 617 -

printf("\nFilling string with five 's' characters:\n");
byfill(area, 5, 's');
printf("Result = %s\n", area);

printf("\nFilling string with two 's' characters starting at ");
printf("position 16:\n");
byfill(&area[16], 2, 's');
printf("Result = %s\n", area);

printf("Filling entire string with 'b' characters:\n");
byfill(area, sizeof(area)-1, 'b');
printf("Result = %s\n", area);

printf("\nBYFILL Sample Program over.\n\n");
}
输出
BYFILL Sample ESQL Program running.

String = xxxxxxxxxxxxxxxxxxx

Filling string with five 's' characters:
Result = sssssxxxxxxxxxxxxxx

Filling string with two 's' characters starting at position 16:
Result = sssssxxxxxxxxxxxssx

Filling entire string with 'b' characters:
Result = bbbbbbbbbbbbbbbbbbb

BYFILL Sample Program over.

功能

GBase 8a MPP Cluster 产品手册
6 附录
文档版本953(2022-09-15)
南大通用数据技术股份有限公司
1597
Group by 算子数据hash 划分时采样,按百分比采样时,采样的百分比值。
取值范围1(10%)~10(100%),默认是1。
说明
_gbase_hash_part_sample_method 参数为1 时有效。

或者,
代理允许 JDBC applet 和实用程序从 LDAP 服务器获得它们的数据库连接信息。

果您打算使用此特性,则需要安装 LDAP 服务器。关于随同 GBase 8s JDBC Driver 使用
LDAP 服务器的通用信息,请参阅 连接属性语法 开始的主题。
下图说明代理如何与 LDAP 服务器系统工作。该图还展示如何从 sqlhosts 文件查找。要获
取更多信息,请参阅 指定 sqlhosts 文件查找。
图: 通过代理查找

GBase 8s JDBC Driver 程序员指南
南大通用数据技术股份有限公司
- 54 -


代理 LDAP 特性需要 JNDI 类库和 LDAP 服务提供商文件(jndi.jar、
ldap.jar 和 providerutil.jar)。可从 www.oracale.com 下载这些 JAR 文件。
在下载并安装文件之后,在 web 服务器上将它们的完全路径名称添加至 CLASSPATH 设
置。这些文件在安装目录之下的 lib 目录中。
指定 LDAP 查找发生的位置
当随同其他 LDAP 关键字使用时,SQLH_LOC 关键字指示 LDAP 查找发生的位置。
SQLH_LOC 可有值 CLIENT 或 PROXY。如果该值为 CLIENT,则驱动程序在客户机侧执
行 LDAP 查找。如果该值为 PROXY,则代理在服务器侧执行查找。如果未指定值,则驱
动程序使用 CLIENT 作为缺省值。
这里是带有指定服务器侧 LDAP 查找的 LDAP 关键字的 applet 或应用程序 URL 的格
式:
jdbc:gbasedbt-sqli:gbasedbtserver=gbasedbt-server-name;
PROXY=proxy-hostname-or-ip-address:proxy-port-no?
PROXYTIMEOUT=60;SQLH_TYPE=LDAP;LDAP_URL=ldap:

//ldap-hostname-or-ip-address:ldap-port-no;LDAP_IFXBASE=dc=mydomain,dc=com;
SQLH_LOC=PROXY;
此示例从 LDAP 服务器获取数据库服务器主机名称和端口:
jdbc:gbasedbt-sqli:gbasedbtserver=samsara;SQLH_TYPE=LDAP;

GBase 8s JDBC Driver 程序员指南
南大通用数据技术股份有限公司
- 55 -
LDAP_URL=ldap://davinci:329;LDAP_IFXBASE=cn=gbasedbt,

o=kmart,c=US;LDAP_USER=abcd;LDAP_PASSWD=secret;SQLH_LOC=PROXY;
PROXY=webserver:1462
要获取使用带有代理的 LDAP 服务器的完整示例,
请参阅安装 JDBC 驱动程序的 demo 目
录中的 proxy applet 和应用程序。
指定 sqlhosts 文件查找
当您正在使用代理时,SQLH_LOC 关键字也适用于 sqlhosts 文件查找。如果 URL 包括
SQLH_LOC=PROXY,则驱动程序读取服务器上的 sqlhosts文件。如果未指定 SQLH_LOC
=PROXY,则驱动程序读取客户机上的文件。
此示例从服务器上的 sqlhosts 获取信息:
jdbc:gbasedbt-sqli:gbasedbtserver=samsara;SQLH_TYPE=FILE;
SQLH_FILE=/work/9.x/etc/sqlhosts;SQLH_LOC=PROXY;
PROXY=webserver:1462