mysql_options4(MYSQL * MYSQL, enum mysql_option选项,const void *arg1, const void *arg2)
mysql_options4 ()
类似于mysql_options ()
但是有额外的第四个参数,因此可以为第二个参数中指定的选项传递两个值。
下面的列表描述了允许的选项、它们的效果以及如何执行__arg1
而且最长
使用。
MYSQL_OPT_CONNECT_ATTR_ADD
(参数类型:Char *, Char *
)该选项向当前连接属性集添加一个属性键值对,以便在连接时传递给服务器。两个参数都是指向以空结束的字符串的指针。第一个和第二个字符串分别表示键和值。如果键为空或已存在于当前连接属性集中,则会发生错误。键名与现有键的比较区分大小写。
以下划线(
_
)只供内部使用,不应由应用程序创建。这种约定允许MySQL引入新属性,而不会与应用程序属性发生冲突。mysql_options4 ()
对它所接受的连接属性数据的聚合大小施加64KB的限制。对于导致超出此限制的呼叫,aCR_INVALID_PARAMETER_NO
发生错误。属性大小限制检查也发生在服务器端。有关详细信息,请参见性能模式连接属性表方法公开连接属性,该方法还描述了性能模式如何通过session_connect_attrs
而且session_account_connect_attrs
表。的描述
MYSQL_OPT_CONNECT_ATTR_RESET
而且MYSQL_OPT_CONNECT_ATTR_DELETE
的描述中的选项mysql_options ()
函数。
指定了重复的属性名称。
键名为空或键值连接属性数据量超过64KB限制。处理步骤
内存不足。
这个例子演示了指定连接属性的调用:
MYSQL MYSQL;mysql_init (mysql);mysql_options (mysql MYSQL_OPT_CONNECT_ATTR_RESET 0);mysql_options4 (mysql, MYSQL_OPT_CONNECT_ATTR_ADD key1”、“value1”);mysql_options4 (mysql, MYSQL_OPT_CONNECT_ATTR_ADD key2”、“value2”);mysql_options4 (mysql, MYSQL_OPT_CONNECT_ATTR_ADD key3”、“value3”);mysql_options (mysql, MYSQL_OPT_CONNECT_ATTR_DELETE key1”);如果(!mysql_real_connect (mysql,“主机”、“用户”、“passwd","database",0,NULL,0)) {fprintf(stderr, "Failed to connect to database: Error: %s\n", mysql_error(&mysql));}