|
|
|
|||
| WebMoney: WMZ Z294115950220 WMR R409981405661 WME E134003968233 |
Visa 4274 3200 2453 6495 |
Эта глава обеспечивает справочный материал для API Connector/ODBC,
показывая поддержанные функции и методы, поддерживаемые типы столбца MySQL и
соответствующий родной тип в Connector/ODBC и коды ошибок, возвращенные
Connector/ODBC, когда ошибка происходит. Этот раздел суммирует установленный порядок
ODBC, категоризированный функциональностью. Для полной справки по API ODBC, пожалуйста, обратитесь к ODBC
Programmer's Reference на
http://msdn.microsoft.com/en-us/library/ms714177.aspx. Приложение может вызвать функцию Для обратной совместимости Connector/ODBC
поддерживает все устаревшие функции. Следующие таблицы приводят вызовы API
Connector/ODBC, сгруппированные задачей: Таблица 7.1. Вызовы ODBC API для соединения с источником данных Таблица 7.2. Вызовы ODBC API для получения информации о
драйвере и источнике данных Таблица 7.3. Вызовы ODBC API для работы с атрибутами драйвера Таблица 7.4. Вызовы ODBC API для подготовки запросов SQL Таблица 7.5. Вызовы ODBC API для подачи запросов Таблица 7.6. Вызовы ODBC API для получения
результатов и информации о результатах Таблица 7.7. Вызовы ODBC API для получения
ошибки или диагностической информации Таблица 7.8. Вызовы ODBC API для получения информации о системных
таблицах источника данных (функции каталога) Таблица 7.9. Вызовы ODBC API для выполнения транзакций
Таблица 7.10. Вызовы ODBC API для завершения запроса
Таблица 7.11. Вызовы ODBC API для завершения связи Следующая таблица иллюстрирует, как Connector/ODBC отображает
типы данных сервера для типов данных SQL и C. Таблица 7.12. Отображение типов данных MySQL в SQL и C Следующие таблицы приводят коды ошибок, возвращенные Connector/ODBC,
кроме ошибок сервера. Таблица 7.13. Специальные коды ошибок,
возвращенные Connector/ODBC
Глава 7. Ссылки по Connector/ODBC
7.1. Connector/ODBC API
SQLGetInfo,
чтобы получить информацию о соответствии Connector/ODBC.
Чтобы получить информацию о поддержке определенной функции в драйвере, надо
вызвать функцию SQLGetFunctions.Имя
Поддержка Connector/ODBC?
Стандарт
Цель SQLAllocHandleДа ISO 92
Получает окружающую среду, связь, запрос или дескриптор. SQLConnectДа ISO 92
Соединяется с драйвером, определенным именем источника данных,
идентификатором пользователя и паролем. SQLDriverConnectДа ODBC
Соединяется с драйвером, определенным
строкой подключения или просит, чтобы менеджер драйверов и драйвер
показали диалоговые окна связи для пользователя. SQLAllocEnvДа Устаревшая
Получает дескриптор окружающей среды из драйвера. SQLAllocConnectДа Устаревшая
Получает дескриптор соединения.
Имя
Поддержка Connector/ODBC
Стандарт
Цель SQLDataSourcesНет ISO 92
Возвращает список доступных источников данных,
обработанных менеджером драйверов. SQLDriversНет ODBC
Возвращает список установленных драйверов и их признаков,
обработанных менеджером драйверов. SQLGetInfoДа ISO 92
Информация об определенном драйвере и источнике данных. SQLGetFunctionsДа ISO 92
Информация о поддерживаемых функциях драйвера. SQLGetTypeInfoДа ISO 92
Информация о поддерживаемых типах данных.
Имя
Поддержка Connector/ODBC
Стандарт
Цель
SQLSetConnectAttrДа ISO 92
Устанавливает атрибуты соединения. SQLGetConnectAttrДа ISO 92
Возвращает значение атрибута соединения. SQLSetConnectOptionДа Устаревшая
Устанавливает атрибуты соединения. SQLGetConnectOptionДа Устаревшая
Возвращает значение атрибута соединения. SQLSetEnvAttrДа ISO 92
Устанавливает атрибуты окружения. SQLGetEnvAttrДа ISO 92
Возвращает значение атрибута окружения. SQLSetStmtAttrДа ISO 92
Устанавливает атрибуты запроса. SQLGetStmtAttrДа ISO 92
Возвращает значение атрибута запроса. SQLSetStmtOptionДа Устаревшая
Устанавливает атрибуты запроса. SQLGetStmtOptionДа Устаревшая
Возвращает значение атрибута запроса.
Имя
Поддержка Connector/ODBC
Стандарт
Цель SQLAllocStmtДа Устаревшая
Размещает обработчик запроса. SQLPrepareДа ISO 92
Готовит SQL-оператор к более позднему выполнению. SQLBindParameterДа ODBC
Назначает хранение для параметра в SQL-операторе. Connector/ODBC 5.2
добавляет поддержку параметров out и
inout через спецификаторы типа
SQL_PARAM_OUTPUT и
SQL_PARAM_INPUT_OUTPUT.
Параметры Out и inout
не поддерживаются для столбцов LONGTEXT и
LONGBLOB.SQLGetCursorNameДа ISO 92
Возвращает имя курсора, связанное с обработчиком запроса. SQLSetCursorNameДа ISO 92
Определяет имя курсора. SQLSetScrollOptionsДа ODBC
Устанавливает поведение курсора.
Имя
Поддержка Connector/ODBC
Стандарт
Цель SQLExecuteДа ISO 92
Выполняет подготовленный запрос. SQLExecDirectДа ISO 92 Выполняет запрос. SQLNativeSqlДа ODBC
Возвращает текст SQL-оператора, как переведено драйвером SQLDescribeParamНет ODBC
Возвращает описание для определенного параметра в запросе.
Не поддержан Connector/ODBC: возвращенным результатам нельзя доверять.
SQLNumParamsДа ISO 92
Возвращает количество параметров в запросе. SQLParamDataДа ISO 92
Используется вместе с SQLPutData, чтобы
снабжать данными параметра во время выполнения.
Полезно для больших значений данных.SQLPutDataДа ISO 92
Посылает часть или все значение данных для параметра.
Полезно для больших значений данных.
Имя
Поддержка Connector/ODBC
Стандарт
Цель SQLRowCountДа ISO 92
Возвращает количество строк, затронутых вставкой,
обновлением или удалением. SQLNumResultColsДа ISO 92
Возвращает количество столбцов в наборе результатов. SQLDescribeColДа ISO 92
Описывает столбец в наборе результатов. SQLColAttributeДа ISO 92
Описывает признаки столбца в наборе результатов. SQLColAttributesДа Устаревшая
Описывает признаки столбца в наборе результатов. SQLFetchДа ISO 92
Возвращает многократные строки результата. SQLFetchScrollДа ISO 92
Возвращает прокручиваемые строки результата. SQLExtendedFetchДа Устаревшая
Возвращает прокручиваемые строки результата. SQLSetPosДа ODBC
Помещает курсор в блоке данных и позволяет запросу
освежить данные в наборе строк или обновить (или удалить)
данные в наборе результатов. SQLBulkOperationsДа ODBC
Выполняет оптовые вставки и оптовые операции по закладке, включая
обновление, удаление и получение по закладке.
Имя
Поддержка Connector/ODBC
Стандарт
Цель SQLErrorДа Устаревшая
Возвращает дополнительную ошибку или информацию о статусе. SQLGetDiagFieldДа ISO 92
Возвращает дополнительную диагностическую информацию (единственная
область диагностической структуры данных). SQLGetDiagRecДа ISO 92
Возвращает дополнительную диагностическую информацию (многократные
области диагностической структуры данных).
Имя
Поддержка Connector/ODBC
Стандарт
Цель SQLColumnPrivileges
Да ODBC
Возвращает список столбцов и связанных привилегий для одной
или более таблиц. SQLColumnsДа X/Open
Возвращает список имен столбцов в указанных таблицах. SQLForeignKeysДа ODBC
Возвращает список имен столбцов, которые составляют внешние ключи, если
они существуют для указанной таблицы. SQLPrimaryKeysДа ODBC
Возвращает список имен столбцов, которые составляют первичный
ключ для таблицы. SQLSpecialColumnsДа X/Open
Информация об оптимальном наборе столбцов, который однозначно определяет
строку в указанной таблице или столбцах, которые автоматически обновляются,
когда любое значение в строке обновляется транзакцией. SQLStatisticsДа ISO 92
Статистика о единственной таблице и списке индексов, связанных с ней.
SQLTablePrivilegesДа ODBC
Возвращает список таблиц и привилегий, связанных с каждой таблицей.
SQLTablesДа X/Open
Возвращает список имен таблиц, сохраненных в
определенном источнике данных.
Имя
Поддержка Connector/ODBC
Стандарт
Цель SQLTransactДа Устаревшая
Передает или откатывает транзакцию. SQLEndTranДа ISO 92
Передает или
отменяет
транзакцию.
Имя
Поддержка Connector/ODBC
Стандарт
Цель SQLFreeStmtДа ISO 92
Завершает обработку запроса, сбрасывает ожидающие результаты и,
произвольно, освобождает все ресурсы, связанные с дескриптором запроса.
SQLCloseCursorДа ISO 92
Закрывает курсор, который был открыт обработчиком запроса. SQLCancelДа ISO 92
Отменяет SQL-оператор.
Имя
Поддержка Connector/ODBC
Стандарт
Цель SQLDisconnectДа ISO 92
Закрывает связь. SQLFreeHandleДа ISO 92
Освобождает окружающую среду, связь, запрос или дескриптор. SQLFreeConnectДа Устаревшая
Освобождает обработчик соединения. SQLFreeEnvДа Устаревшая
Освобождает обработчик окружения.
7.2. Типы данных в Connector/ODBC
Исходное значение
Тип в SQL
Тип в C bigint unsignedSQL_BIGINTSQL_C_UBIGINTbigintSQL_BIGINTSQL_C_SBIGINTbitSQL_BITSQL_C_BITbitSQL_CHARSQL_C_CHARblobSQL_LONGVARBINARYSQL_C_BINARYboolSQL_CHARSQL_C_CHARcharSQL_CHARSQL_C_CHARdateSQL_DATESQL_C_DATEdatetimeSQL_TIMESTAMPSQL_C_TIMESTAMPdecimalSQL_DECIMALSQL_C_CHARdouble precisionSQL_DOUBLESQL_C_DOUBLEdoubleSQL_FLOATSQL_C_DOUBLEenumSQL_VARCHARSQL_C_CHARfloatSQL_REALSQL_C_FLOATint unsignedSQL_INTEGERSQL_C_ULONGintSQL_INTEGERSQL_C_SLONGinteger unsignedSQL_INTEGERSQL_C_ULONGintegerSQL_INTEGERSQL_C_SLONGlong varbinarySQL_LONGVARBINARYSQL_C_BINARYlong varcharSQL_LONGVARCHARSQL_C_CHARlongblobSQL_LONGVARBINARYSQL_C_BINARYlongtextSQL_LONGVARCHARSQL_C_CHARmediumblobSQL_LONGVARBINARYSQL_C_BINARYmediumint unsignedSQL_INTEGERSQL_C_ULONGmediumintSQL_INTEGERSQL_C_SLONGmediumtextSQL_LONGVARCHARSQL_C_CHARnumericSQL_NUMERICSQL_C_CHARrealSQL_FLOATSQL_C_DOUBLEsetSQL_VARCHARSQL_C_CHARsmallint unsignedSQL_SMALLINTSQL_C_USHORTsmallintSQL_SMALLINTSQL_C_SSHORTtextSQL_LONGVARCHARSQL_C_CHARtimeSQL_TIMESQL_C_TIME
timestampSQL_TIMESTAMPSQL_C_TIMESTAMPtinyblobSQL_LONGVARBINARYSQL_C_BINARYtinyint unsignedSQL_TINYINTSQL_C_UTINYINTtinyintSQL_TINYINTSQL_C_STINYINTtinytextSQL_LONGVARCHARSQL_C_CHARvarcharSQL_VARCHARSQL_C_CHARyearSQL_SMALLINTSQL_C_SHORT
7.3. Коды ошибок Connector/ODBC
Исходный код
SQLSTATE 2 SQLSTATE 3
Сообщение об ошибке 500 01000 01000
Общее предупреждение. 501 01004 01004
Строка обрезана справа. 502 01S02 01S02
Значение опции меняется. 503 01S03 01S03
Нет строк для обновления/удаления. 504 01S04 01S04
Больше одной строки для обновления/удаления. 505 01S06 01S06
Попытка получения прежде чем набор результатов возвратил
первый набор строк. 506 07001 07002
SQLBindParameter не используемый
для всех параметров.507 07005 07005
Подготовленный запрос не спецификация курсора. 508 07009 07009
Недействительный дескрипторный индекс. 509 08002 08002
Имя подключения занято. 510 08003 08003
Связь не существует. 511 24000 24000
Недействительный статус курсора. 512 25000 25000
Недействительный статус транзакции. 513 25S01 25S01
Неизвестный статус транзакции. 514 34000 34000
Недействительное имя курсора. 515 S1000 HY000
Общая ошибка драйвера. 516 S1001 HY001
Ошибка распределения памяти. 517 S1002 HY002
Недействительный номер столбца. 518 S1003 HY003
Недействительный тип буфера приложений. 519 S1004 HY004
Недействительный тип данных SQL. 520 S1009 HY009
Недействительное использование нулевого указателя. 521 S1010 HY010
Ошибка последовательности функции. 522 S1011 HY011
Признак не может быть установлен сейчас. 523 S1012 HY012
Недействительный операционный код транзакции. 524 S1013 HY013
Ошибка управления памятью./td> 525 S1015 HY015
Нет доступного имени курсора. 526 S1024 HY024
Недействительное значение атрибута. 527 S1090 HY090
Недействительная последовательность или длина буфера. 528 S1091 HY091
Недействительный дескрипторный идентификатор области. 529 S1092 HY092
Недействительный идентификатор признака/опции. 530 S1093 HY093
Неправильное число параметров. 531 S1095 HY095
Тип функции вне диапазона. 532 S1106 HY106
Тип возврата вне диапазона. 533 S1117 HY117
Значение строки вне диапазона. 534 S1109 HY109
Недействительная позиция курсора. 535 S1C00 HYC00
Дополнительная опция, не реализованная. 0 21S01 21S01
Количество столбцов не соответствует количеству значений. 0 23000 23000
Нарушение ограничения целостности. 0 42000 42000
Синтаксическая ошибка или нарушение прав доступа. 0 42S02 42S02
Базовая таблица или представление не найдено. 0 42S12 42S12
Индекс не найден. 0 42S21 42S21
Столбец уже существует. 0 42S22 42S22
Столбец не найден. 0 08S01 08S01
Ошибка линии связи.
| Найди своих коллег! |
Вы можете
направить письмо администратору этой странички, Алексею Паутову.
![]()