Программирование >>  Программный интерфейс приложений 

1 ... 227 228 229 [ 230 ] 231 232 233 ... 264


только для результирующих наборов, созданных функцией mysql store result (). Для наборов, созданных функцией mysql use result (), значение max length равно 0.

flags. Элемент flags определяет атрибуты столбца. Каждый отдельный атрибут представлен собственным разрядом внутри значения flags. Значения разрядов могут проверяться с помощью констант разрядной маски, представленной в табл. Е.2. Чтобы определить, являются или нет значения столбца беззнаковыми (unsigned), достаточно проверить значение flags следующим образом:

if (field->flags & unsigned flag)

print ( %s values are unsigned\n , field->name

Таблица E.2, Значения элемента flags структуры mysql field

Значение flags

Назначение

auto increment flag

Столбец имеет атрибут auto increment

binary flag

Столбец имеет атрибут binary

mu lti ple ke y f lag

Столбец является частью индекса non unique

not null flag

Столбец не может содержать значения null

pri key flag

Столбец является частью primary key

onique key flag

Столбец является частью индекса unique

unsigned flag

Столбец имеет атрибут unsigned

zerofill flag

Столбец имеет атрибут zerofill

Некоторые константы flags отражают типы столбца, а не его ат-рибутьг В настоящее время они исключены, поэтому для определения типа столбца необходимо исполюовать запись fLeld->type. Исключенные из MySQL константы описаны в табл. Е.З.

Таблица Е.З. Исключенные значения элемента flags структуры

mysql field

Значение flags

Назначение

bl0b flag

Столбец содержит значения типа blob

enum flag

Столбец содержит значения типа enum

set flag

Столбец содержит значения типа зет

timestamp flag

Столбец содержит значения типа timestamp



decimals. Число десятичных знаков для столбцов числового типа. Для не числовых столбцов это значение равно нулю. Так, например, столбец decimal (8,3) имеет значение decimals равное 3, а столбец типа blob - 0.

Макросы доступа

Файл mysql.h содержит несколько макросов, которые позволяют легко исследовать значения элементов структуры MYSQL field. Макрос is num{) проверяет элемент type, а остальные описанные здесь макросы исследуют элемент flags.

Макрос is NUM() возвращает значение True (не равен нулю), если значения столбцов имеют числовой тип:

if (IS NUM (field->type))

printf ( Field %s IS numericXn , field->name);

Макрос IS PRI KEY{) возвращает значение True , если столбец яв ляется частью первичного ключа:

if (IS PRI KEy (field->flags))

printf ( Field %s IS part of primary keyXrt , field->name);

Макрос IS N0T NULL возвращает значение True , если столбец не может содержать значения null;

if (IS NOT NULL (field->flags))

printf ( Field %s values cannot be NULL\n , field->name);

Функции программного интерфейса приложений С

Функции клиентской библиотеки можно классифицировать по следующим категориям.

Функции управления соединением, используемые для установления и разрыва соединений с сервером.

ш Функции состояния и отчетов об ошибках, используемые для получения кодов ошибок и сообщений о них.

ш Функции создания и вьшолнения запросов, используемые для ввода запросов и отправки их на сервер.

ш Функции обработки результирующих наборов, используемые для обработки результатов, возвращающих данные запросов.

ш Информационные функции, обеспечивающие данные о клиенте, сервере, номере версии используемого протокола и текущем соединении.



Административные функции, управляющие функционированием сервера.

Функции отладки, используемые для вывода информации отладки.

Исключенные функции, которые в настоящее время не применяются.

В последующих разделах функции клиентской библиотеки каждой указанной категории описываются более детально и перечисляются в алфавитном порядке. Некоторые параметры постоянно появляются в описаниях функций и имеют стандартное значение.

conn - указатель на механизм обработки соединения с сервером MySQL.

res set - указатель на структуру результирующего набора

MYSQL RES.

field - указатель на структуру информации о столбцах

MYSQL FIELD.

row - строка данных MYSQL ROW из результирующего набора.

Для краткости изложения представленные значения этих параметров можно использовать в последующих описаниях функций.

Все приведенные функции присутствуют в клиентской библиотеке в версии MySQL 3.21.0 и выще, если другое не указано.

Функции управления соединением

Эти функции применяются для установления и разрыва соединений с сервером, установки опций, влияющих на способ установления соединения, и восстановления временно приостановленных соединений.

Л1у Ьоо1 mysgl change user (MYSQL *conn, char *user name, char *password, char *db name);

Изменяет имя пользователя и базу данных по умолчанию для определенного указателем conn соединения. Эта база данных становится базой по умолчанию для ссылок на таблицы, в которых спецификатор базы данных не определен Если аргумент dbname равен NULL, база данных по умолчанию не устанавливается.

Функция mysql change user () возвращает значение True , если пользователю разрешено подключение к серверу и он обладает достаточными полномочиями для доступа к указанной базе. В любом другом случае функция завершается с ошибкой, а текущий пользователь и база данных остаются неизменными.

Функция mysql change user () впервые появилась в MySQL 3 23 3

void mysgl close (MYSQL *conn)

Закрывает соединение, определенное указателем conn. Эту программу рекомендуется вызывать по заверщении сеанса работы с



1 ... 227 228 229 [ 230 ] 231 232 233 ... 264

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика