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 unsigned
SQL_BIGINT
SQL_C_UBIGINT
bigint
SQL_BIGINT
SQL_C_SBIGINT
bit
SQL_BIT
SQL_C_BIT
bit
SQL_CHAR
SQL_C_CHAR
blob
SQL_LONGVARBINARY
SQL_C_BINARY
bool
SQL_CHAR
SQL_C_CHAR
char
SQL_CHAR
SQL_C_CHAR
date
SQL_DATE
SQL_C_DATE
datetime
SQL_TIMESTAMP
SQL_C_TIMESTAMP
decimal
SQL_DECIMAL
SQL_C_CHAR
double precision
SQL_DOUBLE
SQL_C_DOUBLE
double
SQL_FLOAT
SQL_C_DOUBLE
enum
SQL_VARCHAR
SQL_C_CHAR
float
SQL_REAL
SQL_C_FLOAT
int unsigned
SQL_INTEGER
SQL_C_ULONG
int
SQL_INTEGER
SQL_C_SLONG
integer unsigned
SQL_INTEGER
SQL_C_ULONG
integer
SQL_INTEGER
SQL_C_SLONG
long varbinary
SQL_LONGVARBINARY
SQL_C_BINARY
long varchar
SQL_LONGVARCHAR
SQL_C_CHAR
longblob
SQL_LONGVARBINARY
SQL_C_BINARY
longtext
SQL_LONGVARCHAR
SQL_C_CHAR
mediumblob
SQL_LONGVARBINARY
SQL_C_BINARY
mediumint unsigned
SQL_INTEGER
SQL_C_ULONG
mediumint
SQL_INTEGER
SQL_C_SLONG
mediumtext
SQL_LONGVARCHAR
SQL_C_CHAR
numeric
SQL_NUMERIC
SQL_C_CHAR
real
SQL_FLOAT
SQL_C_DOUBLE
set
SQL_VARCHAR
SQL_C_CHAR
smallint unsigned
SQL_SMALLINT
SQL_C_USHORT
smallint
SQL_SMALLINT
SQL_C_SSHORT
text
SQL_LONGVARCHAR
SQL_C_CHAR
time
SQL_TIME
SQL_C_TIME
timestamp
SQL_TIMESTAMP
SQL_C_TIMESTAMP
tinyblob
SQL_LONGVARBINARY
SQL_C_BINARY
tinyint unsigned
SQL_TINYINT
SQL_C_UTINYINT
tinyint
SQL_TINYINT
SQL_C_STINYINT
tinytext
SQL_LONGVARCHAR
SQL_C_CHAR
varchar
SQL_VARCHAR
SQL_C_CHAR
year
SQL_SMALLINT
SQL_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
Ошибка линии связи.
Найди своих коллег! |
Вы можете направить письмо администратору этой странички, Алексею Паутову.