5.4.55 mysql_options4()
int
mysql_options4(MYSQL *mysql,
enum mysql_option option,
const void *arg1,
const void *arg2)
Описание
mysql_options4() аналогична mysql_options(), но имеет дополнительный четвёртый аргумент, позволяющий передать два значения для указанного во втором аргументе параметра.
Следующий список описывает разрешённые параметры, их действие и то, как arg1 и arg2 используются.
-
MYSQL_OPT_CONNECT_ATTR_ADD(типы аргументов:char *, char *)Этот параметр добавляет пару атрибут-значение в текущий набор атрибутов соединения, которые будут переданы серверу во время подключения. Оба аргумента являются указателями на строки с завершением нулём. Первая и вторая строки обозначают ключ и значение соответственно. Если ключ пустой или уже существует в текущем наборе атрибутов соединения, возникает ошибка. Сравнение имени ключа с существующими ключами чувствительно к регистру.
Имена ключей, начинающиеся с подчёркивания (
_), зарезервированы для внутреннего использования и не должны создаваться программами-приложениями. Эта конвенция позволяет вводить новые атрибуты в MySQL без конфликтов с атрибутами приложения.mysql_options4()накладывает ограничение в 64 КБ на общий размер данных атрибутов соединения, которые она принимает. Для вызовов, приводящих к превышению этого ограничения, возникает ошибка. Проверки лимита размера атрибутов также выполняются на стороне сервера. Для получения подробностей обратитесь к , в котором также описано, как Performance Schema раскрывает атрибуты соединения через таблицы и .Смотрите также описания параметров
MYSQL_OPT_CONNECT_ATTR_RESETиMYSQL_OPT_CONNECT_ATTR_DELETEв описании функцииmysql_options(). -
MYSQL_OPT_USER_PASSWORD(типы аргументов:unsigned int *, char *)Этот параметр указывает пароль для фактора многофакторной аутентификации (см. ).
Первый аргумент указывает на переменную
unsigned int, которая должна иметь значение 1, 2 или 3, чтобы указать фактор, для которого задаётся пароль. Второй аргумент указывает на строку символов, предоставляющую значение пароля.Этот параметр был добавлен в MySQL 8.0.27.
Возвращаемые значения
Ноль в случае успеха. Неноль, если вы указали неизвестный параметр.
Ошибки
-
Было указано дублирующееся имя атрибута.
-
Имя ключа было пустым или количество данных атрибутов соединения ключ-значение превысило предел 64 КБ.
-
Нет доступной памяти.
Пример
Этот пример демонстрирует вызовы, которые задают атрибуты соединения:
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));
}
© 2025 Oracle
Licensed under the GPLv2 License.