Rechercher dans le manuel MySQL
28.7.7.51 mysql_options4()
int mysql_options4(MYSQL *mysql, enum mysql_option
option, const void *arg1, const void *arg2)
Description
mysql_options4()
is similar to
mysql_options()
but has an
extra fourth argument so that two values can be passed for the
option specified in the second argument.
The following list describes the permitted options, their
effect, and how arg1
and
arg2
are used.
MYSQL_OPT_CONNECT_ATTR_ADD
(argument types:char *, char *
)This option adds an attribute key-value pair to the current set of connection attributes to pass to the server at connect time. Both arguments are pointers to null-terminated strings. The first and second strings indicate the key and value, respectively. If the key is empty or already exists in the current set of connection attributes, an error occurs. Comparison of the key name with existing keys is case-sensitive.
Key names that begin with an underscore (
_
) are reserved for internal use and should not be created by application programs. This convention permits new attributes to be introduced by MySQL without colliding with application attributes.mysql_options4()
imposes a limit of 64KB on the aggregate size of connection attribute data it will accept. For calls that cause this limit to be exceeded, aCR_INVALID_PARAMETER_NO
error occurs. Attribute size-limit checks also occur on the server side. For details, see Section 26.12.9, “Performance Schema Connection Attribute Tables”, which also describes how the Performance Schema exposes connection attributes through thesession_connect_attrs
andsession_account_connect_attrs
tables.See also the descriptions for the
MYSQL_OPT_CONNECT_ATTR_RESET
andMYSQL_OPT_CONNECT_ATTR_DELETE
options in the description of themysql_options()
function.
A duplicate attribute name was specified.
A key name was empty or the amount of key-value connection attribute data exceeds 64KB limit.
Out of memory.
This example demonstrates the calls that specify connection attributes:
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");
if (!mysql_real_connect(&mysql,"host","user","passwd","database",0,NULL,0))
{
fprintf(stderr, "Failed to connect to database: Error: %s\n",
mysql_error(&mysql));
}
Document created the 26/06/2006, last modified the 26/10/2018
Source of the printed document:https://www.gaudry.be/en/mysql-rf-mysql-options4.html
The infobrol is a personal site whose content is my sole responsibility. The text is available under CreativeCommons license (BY-NC-SA). More info on the terms of use and the author.
References
These references and links indicate documents consulted during the writing of this page, or which may provide additional information, but the authors of these sources can not be held responsible for the content of this page.
The author This site is solely responsible for the way in which the various concepts, and the freedoms that are taken with the reference works, are presented here. Remember that you must cross multiple source information to reduce the risk of errors.