|
Программирование >> Программный интерфейс приложений
Подключается к серверу и возвращает указатель на дескриптор соединения. Аргумент conn должен быть указателем на существующий механизм обработки соединений, инициализированный функцией mysql init О. Адрес дескриптора возвращается при успешном установлении соединения. Если в процессе подключения возникла ошибка, функция возвращает значение NULL. Чтобы в случае неудачной попытки установления соединения получить информацию об ошибке, можно задать значение дескриптора conn функциям mysql errno() и mysql error (). Не следует однако задавать значение conn другим программам клиентской библиотеки, которые предполагают успешное установление соединения. Аргумент host name определяет имя сервера, к которому выполняется подключение. В табл. Е.4 показано, какое соединение пытается установить клиент при различных значениях аргумента hostname в Windows и UNIX. (Если соединение устанавливается через разъем UNIX или именованный канал, имя разъема или канала определяются параметром socketname.) Таблица Е.4. Типы клиентских соединений, определяемые типом имен компьютера сервера Значение имени компьютера Тип соединения UNIX Тип соединения Windows имя компьютера IP-номер localhost NULL ТСР/1Р-соединение с указанным компьютером ТСР/1Р-соединение с указанным компьютером Соединение с локальным компьютером через разъем UNIX Не применяется Соединение с локальным компьютером через разъем UNIX ТСР/1Р-соединение с указанным компьютером ТСР/1Р-соединение с указанным компьютером ТСР/1Р-соединение с локальным компьютером Соединение с локальным компьютером через именованный канал ТСР/1Р-соединение с локальным компьютером. В Windows NT перед установлением этого соединения выполняется по-пьпка установления соединения через именованный канал Имя пользователя MySQL задается аргументом user name. Если он имеет значение NULL, клиентская библиотека отправляет установленное по умолчанию имя. В работающих под управлением UNIX системах именем по умолчанию является регистрационное имя, а работающих под Windows - имя, определенное переменной среды user (если она установлена), либо odbc. Аргумент password устанавливает пароль. Если он имеет значение null, пользователь сможет подключиться только в том случае, если таблица разрешений будет содержать запись с его именем, компьютером, с которого осуществляется подключение, и пустым полем пароля. Используемая рабочая база задается аргументом dbname. Если он имеет значение null, исходная база данных не выбирается. Аргумент port num определяет номер порта, используемого для установления ТСР/1Р-соединения. Если этот аргумент имеет значение О, выбирается установленный по умолчанию номер порта. Номер порта и имя разъема выбираются в соответствии со значением hostname. Если подключение к серверу выполняется с локального компьютера, функция mysql real connect () пытается установить соединение с помощью разъема домена UNIX (при работе под управлением UNIX) или именованного канала (при работе под управлением Windows). Во всех остальных случаях соединение устанавливается с помощью протокола TCP/IP. Аргумент flags может иметь значение О, отражающее полное отсутствие опций, или одно (или несколько) значение из табл. Е.5 Устанавливаемь[е в нем опции воздействуют на функционирование сервера. Таблица Е.5. Значение аргумента flags для функции туsql real connect() Значение флага Воздействие на функционирование сервера client F0UND R0WS Запросы update возвращают число соответствующих условиям строк, а не число измененных строк CLiENT No SCHEMA Запрещает использовать схему db name . tbl name . col name CLiENT compress Использует протокол сжагия, если его поддерживает сервер client odbc Работает с клиентом как с ODBC-кпиентом Если задана опция client no schema, сервер позволяет ссы латься на объекты в запросах только с помощью синтаксиса tbl name.col name, tbl name или col name. Значения флагов являются разрядными, что позволяет их комбинировать с помощью символов 1 или + , например. client compress client odbc ИЛИ client compress-i-client odbc функция mysql real connect о впервые появилась в MySQL 3.2L10. Параметр db name был добавлен в версии 3.22.0. Применение функции mysqiinito ИДЯ инициализации аргументов MySQL берет свое начало в версии 3.22. L Функции состояния и диагностики ошибок Описанные в этом разделе функции применяются для определения причин возникновения ошибок и создания отчетов о них. ш unsigned int mysql errno (mysql *conn); Возвращает код ошибки для последней вызываемой программы клиентской библиотеки, возвращающей значение состояния. Так, код ошибки О указывает на отсутствие ошибки. Все остальные значения кода указывают на наличие ошибок. Возможные коды ошибок описаны в файлах заголовков MySQL, errmsg.h и mysql error.h. if (mysql errno (conn) == 0) printf ( Bee в порядкеХп ); else printf ( Что-то неправильно!\n ); Функция mysql errno () впервые появилась в MySQL 3.2L7. char * mysql error (mysql *conn) Возвращает строку, завершающуюся значением null, содержащую сообщение об ошибке последней вызываемой профаммы клиентской библиотеки, возвращающей значение состояния. Если ошибка отсутствует, эта функция возвращает пустую сфоку (сфоку с нулевой длинной, но не указатель null). Хотя обычно функция mysql error() вызывается уже после появления ошибки, возвращаемое ею значение можно использовать для проверки наличия или отсутствия ошибки в работе: if (mysql error (conn)[0] == \0) /* пустая строка? */ printf ( Все в порядке\п ); else printf ( Что-то неправильно!\п ); Функция mysql error() впервые появилась в MySQL 3.2L7 (возможно, даже чуть позже). Функции создания и выполнения запросов Описанные в этом разделе функции используются для отсылки запросов на сервер. Функция mysql escape string () позволяет создать за-tipoc с помощью специальных символов, имеющих особое значение.
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |