поиск:
Полезные ссылки

  • Форум по MySQL

  • Статьи по MySQL

  • Вопросы по MySQL

  • MySQL.com


  • Базы данных

  • MySQL

  • PostgreSQL


  • PHP конференция 2005
    Подробности!

    8.4.3.39. mysql_options()

    int mysql_options(MYSQL *mysql, enum mysql_option option, const char *arg)

    Описание

    Может использоваться для установки дополнительных опций соединения и влияет на режим работы соединения. Эта функция может вызываться многократно для установки нескольких опций.

    Функция mysql_options() должна вызываться после функции mysql_init() и перед функцией mysql_connect() или mysql_real_connect().

    Аргумент option представляет собой опцию, которую требуется установить; аргумент arg является величиной этой опции. Если данная опция является целым числом, то аргумент arg должен указывать на величину целого числа.

    Возможные значения опций:

    Опция Тип аргумента Функция
    MYSQL_OPT_CONNECT_TIMEOUT unsigned int * Время ожидания для соединения в секундах.
    MYSQL_OPT_COMPRESS Не используется Использовать сжатие в клиент-серверном протоколе.
    MYSQL_OPT_LOCAL_INFILE Опциональный указатель на uint Если указатель не задан или указывает на unsigned int != 0 команда LOAD LOCAL INFILE разрешена.
    MYSQL_OPT_NAMED_PIPE Не используется Использовать именованные каналы для соединения с сервером MySQL на NT.
    MYSQL_INIT_COMMAND char * Команда для исполнения при подключении к серверу MySQL. При восстановлении соединения будет снова автоматически выполнена.
    MYSQL_READ_DEFAULT_FILE char * Читать опции из указанного файла опций вместо чтения из файла my.cnf.
    MYSQL_READ_DEFAULT_GROUP char * Читать опции из указанной группы из файла my.cnf или из файла заданного в MYSQL_READ_DEFAULT_FILE.

    Следует помнить, что группа client читается всегда при использовании MYSQL_READ_DEFAULT_FILE или MYSQL_READ_DEFAULT_GROUP.

    Упомянутая группа в файле опций может содержать следующие опции:

    Опция Описание
    connect-timeout Время ожидания для соединения в секундах. Для Linux это время ожидания используется также для ожидания первого ответа с сервера.
    compress Использовать сжатие в клиент-серверном протоколе.
    database Подключиться к этой базе данных, если никакая база данных не была указана в данной команде подключения.
    debug Опции отладки.
    disable-local-infile Блокировка использования LOAD DATA LOCAL.
    host Имя хоста по умолчанию.
    init-command Команда для исполнения при подключении к серверу MySQL. При восстановлении соединения будет снова автоматически выполнена.
    interactive-timeout Аналогично заданию CLIENT_INTERACTIVE в mysql_real_connect(). See Раздел 8.4.3.42, «mysql_real_connect()».
    local-infile[=(0|1)] Если аргумент не задан или указан аргумент != 0, то разрешено использование LOAD DATA LOCAL.
    max_allowed_packet Максимальный размер пакета, который клиент может читать с сервера.
    password Пароль по умолчанию.
    pipe Использовать именованные каналы для соединения с сервером MySQL на NT.
    protocol=(TCP | SOCKET | PIPE | MEMORY) Какой протокол использовать для подключения к серверу (новшество 4.1.0).
    port Номер порта по умолчанию.
    return-found-rows Предписывает mysql_info() возвращать найденные строки вместо обновления их при выполнении UPDATE.
    shared-memory-base-name=name Имя блока общей памяти (shared memory name), которое следует использовать для подключения к серверу (по умолчанию "MySQL"). Новшество в MySQL 4.1.
    socket Номер сокета по умолчанию.
    user Пользователь по умолчанию.

    Следует помнить, что timeout замещен на connect-timeout, но timeout временно еще работает.

    Для более подробной информации о файлах опций см. раздел See Раздел 4.1.2, «Файлы параметров my.cnf».

    Возвращаемые значения

    Нуль при успешном выполнении. Величина, отличная от нуля, если используется неизвестная опция.

    Пример

    MYSQL mysql;
    mysql_init(&mysql);
    mysql_options(&mysql,MYSQL_OPT_COMPRESS,0);
    mysql_options(&mysql,MYSQL_READ_DEFAULT_GROUP,"odbc");
    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));
    }
    

    Вышеприведенный пример запрашивает клиента использовать сжатый клиент-серверный протокол и читать дополнительные опции из секции odbc в файле my.cnf.

     
    © 1997-2005 PHP Club Team
    Rambler's Top100