Поделиться через


SQL. Выполнение прямых вызовов SQL (ODBC)

Обновлен: Ноябрь 2007

В данном разделе рассматриваются следующие вопросы:

  • Порядок использования прямых вызовов SQL.

  • Порядок выполнения прямого вызова SQL источника данных.

zd4ecs46.alert_note(ru-ru,VS.90).gifПримечание.

В этом разделе приведены сведения, относящиеся к классам ODBC библиотеки MFC. Сведения, относящиеся к классам DAO библиотеки MFC, см. в разделе "Сравнение ядра СУБД Microsoft Jet SQL и ANSI SQL" в справке DAO.

Порядок использования прямых вызовов SQL

Чтобы создать новые и удалить или изменить существующие таблицы, создать индексы и выполнить другие функции SQL, которые приводят к изменению схемы источника данных (см. раздел Источник данных (ODBC)), необходимо напрямую выполнить инструкцию SQL для источника данных с помощью языка описания баз данных (DDL). Если для создания таблицы или набора записей во время разработки используется мастер, можно определить, какие столбцы таблицы будут представлять набор записей. Это позволяет запретить добавление столбцов в таблицу после компиляции программы. Непосредственная поддержка языка DDL в классах баз данных не реализована, однако допускается написание кода, определяющего динамическую привязку нового столбца к набору записей во время выполнения. Дополнительные сведения в порядке выполнения такой привязки см. в разделе Набор записей. Динамическая привязка столбцов данных (ODBC).

Для изменения схемы также можно использовать саму СУБД или другие средства, поддерживающие выполнение функций DDL. Также можно вызывать функции ODBC для передачи инструкций SQL, например для вызова готового запроса (сохраненной процедуры), который не возвращает записи.

Выполнение прямого вызова функции SQL

Чтобы выполнить прямой вызов SQL, используйте CDatabase Class. Создайте строку инструкции SQL (обычно в объекте CString) и передайте ее в функцию-член CDatabase::ExecuteSQL объекта CDatabase. Если вызов функции ODBC используется для передачи инструкции SQL, в которой должны возвращаться записи, эти записи игнорируются.

См. также

Основные понятия

SQL