返回首页

gbase数据、南大通用产品文档:GBase8c

更新日期:2024年09月11日

参数说明

-f
主机列表,列出所有需要建立互信主机的IP。

确保hostfile 文件中只配置主机IP(每行只写一个IP),不包含其它信息。

-l
指定日志文件的保存路径。
取值范围:任意存在的可访问的绝对路径。

GBase 8c 工具参考手册
南大通用数据技术股份有限公司
240

--skip-hostname-set
是否将“-f”参数文件中IP 与其hostname 的映射关系写入“/etc/hosts”文件中。默认写入,
如果指定该参数则不写入。
普通用户无权限编辑/etc/hosts 文件,
故有无指定该参数,
普通用
户均不生成映射关系。

--no-deduplicate
是否在配置互信修改/etc/hosts 文件的时候,去除/etc/hosts 文件中已经配置过的主机信
息,默认是去重复。

-?, --help
显示帮助信息。

-V, --version
显示版本号信息。

 摘要:
gbase_real_connect()尝试与运行在主机上的GBase 数据库引擎建立连接。
在你能够执行需要有效GBase 连接句柄结构的任何其他API 函数之前,
gbase_real_connect()必须成功完成。
 语法:
GBASE * gbase_real_connect(GBASE *gbase,
const char *host,





const char *user,





const char *passwd,





const char *db,





unsigned int port,





const char *unix_socket,





unsigned long clientflag);
 参数:





GBase 8a 程序员手册C API 篇
南大通用数据技术股份有限公司

- 35 -

gbase

调用gbase_real_connect()之前,
必须调用gbase_init()来



初始化GBASE 结构。
host

必须是主机名或IP 地址。如果“host”是NULL 或字符串



"localhost",连接将被视为与本地主机的连接。如果操作系



统支持套接字(Unix)或命名管道(Windows)
,将使用它们



而不是TCP/IP 连接到服务器。如果使用支持集群IP 路由的



GBase C API 连接GBase 8a 数据库集群时,host 可以是包含



几个集群节点IP 的字符串,IP 之间以“;”进行分割。这样



可以使用GBase C API 的集群IP 路由功能。
user

用户的GBase 登录ID。如果“user”是NULL 或空字符串"",




用户将被视为当前用户。
passwd
用户的密码
db

数据库名称。
如果db 为NULL,
连接会将默认的数据库设为该



值。
port

如果“port”不是0,其值将用作TCP/IP 连接的端口号。注



意,
“host”参数决定了连接的类型。
unix_socket 如果unix_socket 不是NULL,该字符串描述了应使用的套接



字或命名管道。注意,
“host”参数决定了连接的类型。
clientflag 其值通常为0,
但是,
也能将其设置为下述标志的组合,
以允



许特定功能:
标志名称
标志描述
CLIENT_COMPRESS
使用压缩协议。

GBase 8a 程序员手册C API 篇


- 36 -

南大通用数据技术股份有限公司
标志名称
标志描述
CLIENT_FOUND_RO
WS
返回发现的行数(匹配的)
,而不是受影响的行数。

CLIENT_IGNORE_S
PACE
允许在函数名后使用空格。使所有的函数名成为保
留字。
CLIENT_INTERACT
IVE
关闭连接之前,允许interactive_timeout(取代
了wait_timeout)秒的不活动时间。客户端的会话
wait_timeout 变量被设为会话
interactive_timeout 变量的值。
CLIENT_LOCAL_FI
LES
允许LOAD DATA LOCAL 处理功能。
CLIENT_MULTI_ST
ATEMENTS
通知服务器,客户端可能在单个字符串内发送多条
语句(由‘;’隔开)
。如果未设置该标志,将禁止多语
句执行。
CLIENT_MULTI_RE
SULTS
通知服务器,客户端能够处理来自多语句执行或存
储程序的多个结果集。如果设置了
CLIENT_MULTI_STATEMENTS,将自动设置它。
CLIENT_NO_SCHEM
A
禁止db_name.tbl_name.col_name 语法。它用于
ODBC。如果使用了该语法,它会使分析程序生成错
误,在捕获某些ODBC 程序中的缺陷时,它很有用。

CLIENT_ODBC
客户端是ODBC 客户端。它将gbased 变得更为ODBC
友好。
CLIENT_SSL
使用SSL
(加密协议)

该选项不应由应用程序设置,
它是在客户端库内部设置的。

 返回值:
如果连接成功,返回GBASE*连接句柄。如果连接失败,返回NULL。对于成
功的连接,返回值与第1 个参数的值相同。
 错误



GBase 8a 程序员手册C API 篇
南大通用数据技术股份有限公司

- 37 -
CR_CONN_HOST_ERROR

无法连接到GBase 服务器。
CR_CONNECTION_ERROR

无法连接到本地GBase 服务器。
CR_IPSOCK_ERROR


无法创建IP 套接字。
CR_OUT_OF_MEMORY


内存溢出。
CR_SOCKET_CREATE_ERROR
无法创建Unix 套接字。
CR_UNKNOWN_HOST


无法找到主机名的IP 地址。
CR_VERSION_ERROR


协议不匹配
CR_NAMEDPIPEOPEN_ERROR
无法在Windows 平台下创建命名管道。
CR_NAMEDPIPEWAIT_ERROR
在Windows 平台下等待命名管道失败。
CR_NAMEDPIPESETSTATE_ERROR 在Windows 平台下获取管道处理程序失败。

CR_SERVER_LOST


如果connect_timeout > 0,而且在连接








服务器时所用时间长于connect_timeout







秒,
或在执行init-command时服务器消失。

|按位或
示例
返回“29 | 15”的计算结果。
gbase> SELECT 29 | 15 FROM dual;
+---------+
| 29 | 15 |
+---------+
|
31 |
+---------+
1 row in set
说明
29 对应的比特值为“11101”,15 对应的比特值为“1111”,逐位
进行或操作,结果为“11111”,对应的十进制值为“31”。