CDaoQueryDef

CDaoQueryDef об'єкт представляє визначення запиту, або "querydef", зазвичай одне, що зберігається в базі даних. У querydef є даних access об'єкт, що містить інструкції SQL, яка описує запит і його властивості, такі як "Дата створення" та "ODBC Timeout". Ви також можете створювати тимчасові querydef об'єкти без збереження, але це зручно — і набагато більш ефективним — зберегти зазвичай повторно запити в базі даних. CDaoDatabase об'єкт підтримує набір, називається QueryDefs колекція, яка містить його збережений querydefs.

Примітка   Класи бази даних DAO відрізняються від класи MFC бази даних, заснований на відкрити підключення до бази даних (ODBC). Всі імена класів бази даних DAO мають префікс "CDao". Ви все одно можете доступ до джерел даних ODBC класу DAO. Загалом, MFC класів на основі DAO здатні більш ніж MFC класи, на основі ODBC; на основі DAO класи доступ до даних, включаючи через драйвери ODBC, за допомогою власної бази даних системи. На основі DAO класи також підтримує даних визначення мови (DDL) операцій, наприклад, додавання таблиці за допомогою класів, без того, щоб зателефонувати DAO безпосередньо.

Використання

Використання querydef об'єктів або працювати з наявним збережений запит, або створити новий збережений запит або тимчасового:

  1. У всіх випадках вперше побудувати CDaoQueryDef об'єкт, постачання вказівник на об'єкт CDaoDatabase , до якої належить цей запит.

  2. Потім виконайте нижченаведені дії, залежно від того, що ви хочете:
    • Використання наявного збереженого запиту, зателефонуйте querydef об'єкт відкритим члена функцію, ім'я збережений запит.

    • Для створення нового збереженого запиту, телефонуйте querydef об'єкт Створити член функцію, ім'я запиту. Потім викликати Додавання зберегти запит, додавши його до колекції в базі даних QueryDefs. Створити ставить на querydef у відкритих держави, так що після виклику Створити ви не вимагають Відкриття.

    • Для створення тимчасових querydef, зателефонуйте Створити. Передати пустий рядок для запиту імені. Не вимагають Додавання.

Коли ви закінчите, використовуючи querydef об'єкт, дзвінків його Закрити членів; потім знищити об'єкт querydef.

Порада   Найпростіший спосіб створення збережених запитів є їх створення і зберігати їх у базі даних за допомогою Microsoft Access. Потім можна відкривати та використовувати їх у MFC код.

Цілей

Ви можете використовувати querydef об'єкта для будь-якого з наступних цілей:

Можна використовувати querydef об'єкта для будь-якого типу запиту, включаючи вибір, дії, перехресний, видалення, оновлення, додавання, створення таблиці, визначення даних, SQL до сервера, Союз і навалочних запитів. Тип запиту, визначається вмістом SQL-оператор, надані користувачем. Відомості про типи запитів можна знайти методи виконання і GetType . Набори записів зазвичай використовується для повернення рядків запитів, зазвичай тих, хто використовує Виберіть... З ключові слова. Виконання найбільш часто використовуються для операцій навалом. Докладніше перегляньте виконання і CDaoRecordset.

Querydefs та набори записів

Використання об'єкта querydef для створення об'єкта CDaoRecordset , зазвичай створюють або відкривають querydef, як описано вище. Потім побудувати набору записів об'єкта, проходячи вказівник до querydef об'єкта, коли ви телефонуєте CDaoRecordset::Open. Querydef, ви повинні бути в відкритого стану. Докладніше перегляньте статтю клас CDaoRecordset.

До querydef не можна використовувати для створення набору записів (найчастіше для на querydef), якщо це відкритий стан. Покласти в querydef у відкритих держави за телефоном або Відкрити або Створити.

Зовнішніх баз даних

Querydef об'єкти є кращим способом для використання рідної SQL діалект двигун зовнішньої бази даних. Наприклад, можна створити Transact-SQL запит (як використовується на Microsoft SQL Server) і зберігати його в querydef об'єкт. Якщо потрібно використати запит SQL не на основі Microsoft Jet database engine, необхідно надати рядок підключення до зовнішнього джерела даних. Запити з дійсним підключення рядки обхід обробника баз даних і передати запит безпосередньо до зовнішньої бази даних сервера для обробки.

Порада   Кращий спосіб роботи з таблицями ODBC є вкладення їх у Microsoft Jet (.База даних MDB). Докладніше, перегляньте статтю зовнішні ДАО: робота з зовнішніх джерел даних в Visual C++ програміста керівництво.

Щоб отримати додаткові відомості про querydefs, перегляньте статтю - ДАО Querydef в Visual C++ програміста керівництва. Для отримання додаткової інформації зверніться до розділів "QueryDef об'єкт", "QueryDefs колекція" та "Звернення до зовнішніх баз даних з ДАО" в довідці Microsoft DAO.

# включити lt;afxdao.h>

|&Nbsp членів класу ; Базовий клас | Ієрархічна діаграма

Зразки  MFC зразок DAOVIEW | MFC зразок DAOTABLE

Дивіться також CDaoRecordset, CDaoDatabase, CDaoTableDef, CDaoException

Index