Spec-Zone .ru
спецификации, руководства, описания, API

21.8.11.5. mysql_stmt_bind_result()

my_bool mysql_stmt_bind_result(MYSQL_STMT *stmt, MYSQL_BIND *bind)

Описание

mysql_stmt_bind_result() используется, чтобы связать (то есть, связать) выходные столбцы в наборе результатов к буферам длины и буферам данных. Когда mysql_stmt_fetch() вызывается, чтобы выбрать данные, протокол клиента/сервера MySQL помещает данные для связанных столбцов в указанные буферы.

Все столбцы должны быть связаны с буферами до вызова mysql_stmt_fetch(). bind адрес массива MYSQL_BIND структуры. Клиентская библиотека ожидает, что массив будет содержать один элемент для каждого столбца набора результатов. Если Вы не связываете столбцы с MYSQL_BIND структуры, mysql_stmt_fetch() просто игнорирует выборку данных. Буферы должны быть достаточно большими, чтобы содержать значения данных, потому что протокол не возвращает значения данных в блоках.

Столбец может быть связан или восстановление в любое время, даже после того, как набор результатов был частично получен. Новая привязка вступает в силу в следующий раз mysql_stmt_fetch() вызывается. Предположите, что приложение связывает столбцы в наборе результатов и вызовах mysql_stmt_fetch(). Клиент-серверный протокол возвращает данные в связанных буферах. Затем предположите, что приложение связывает столбцы с различным набором буферов. Протокол помещает данные в недавно связанные буферы когда следующий звонок mysql_stmt_fetch() происходит.

Чтобы связать столбец, приложение вызывает mysql_stmt_bind_result() и передает тип, адрес, и длину буфера вывода, в который должно быть сохранено значение. Раздел 21.8.9, "API C Готовые Структуры данных Оператора", описывает элементы каждого MYSQL_BIND элемент и как они должны быть установлены получить выходные значения.

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

Нуль, если связывать работа была успешна. Ненулевой, если ошибка произошла.

Ошибки

Пример

См. Пример в Разделе 21.8.11.11,"mysql_stmt_fetch()" .