Spec-Zone.ru › MySQL Connectors 1.0

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.
https://docs.oracle.com/cd/E17952_01/c-api-8.0-en/mysql-options4.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API