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


Структура CDaoQueryDefInfo

Структура CDaoQueryDefInfo содержит сведения об объекте querydef, определенном для объектов доступа к данным (DAO).

Синтаксис

struct CDaoQueryDefInfo
{
    CString m_strName;               // Primary
    short m_nType;   // Primary
    COleDateTime m_dateCreated;      // Secondary
    COleDateTime m_dateLastUpdated;  // Secondary
    BOOL m_bUpdatable;               // Secondary
    BOOL m_bReturnsRecords;          // Secondary
    CString m_strSQL;                // All
    CString m_strConnect;            // All
    short m_nODBCTimeout;            // All
};

Параметры

m_strName
Уникально присваивает имя объекту querydef. Дополнительные сведения см. в разделе "Свойство name" в справке DAO. Вызовите CDaoQueryDef::GetName , чтобы получить это свойство напрямую.

m_nType
Значение, указывающее рабочий тип объекта querydef. Может иметь следующие значения:

  • dbQSelect Выберите — запрос выбирает записи.

  • dbQAction Действие — запрос перемещает или изменяет данные, но не возвращает записи.

  • dbQCrosstab Перекрестная передача — запрос возвращает данные в формате электронной таблицы.

  • dbQDelete Delete — запрос удаляет набор указанных строк.

  • dbQUpdate Обновление — запрос изменяет набор записей.

  • dbQAppend Добавление — запрос добавляет новые записи в конец таблицы или запроса.

  • dbQMakeTable Make-table — запрос создает новую таблицу из набора записей.

  • dbQDDL Определение данных — запрос влияет на структуру таблиц или их частей.

  • dbQSQLPassThrough Сквозная передача — инструкция SQL передается непосредственно в серверную часть базы данных без промежуточной обработки.

  • dbQSetOperation Объединение — запрос создает объект набора записей типа моментального снимка, содержащий данные из всех указанных записей в двух или более таблицах с любыми повторяющимися записями. Чтобы включить дубликаты, добавьте ключевое слово ALL в инструкцию SQL запроса.

  • dbQSPTBulk Используется для dbQSQLPassThrough указания запроса, который не возвращает записи.

Примечание.

Чтобы создать сквозной запрос SQL, константа не устанавливается dbQSQLPassThrough . Это автоматически устанавливается ядром СУБД Microsoft Jet при создании объекта querydef и задания свойства Подключение.

Дополнительные сведения см. в разделе "Свойство type" в справке DAO.

m_dateCreated
Дата и время создания запроса. Чтобы напрямую получить дату создания запроса, вызовите функцию члена GetDateCreated объекта, связанного CDaoTableDef с таблицей. Дополнительные сведения см. в комментариях ниже. См. также раздел "Свойства DateCreated, LastUpdated" в справке DAO.

m_dateLastUpdated
Дата и время последнего изменения, внесенного в запрос. Чтобы напрямую получить дату последнего обновления таблицы, вызовите функцию члена GetDateLastUpdated запроса. Дополнительные сведения см. в комментариях ниже. См. раздел "Свойства DateCreated, LastUpdated" в справке DAO.

m_bUpdatable
Указывает, можно ли вносить изменения в объект querydef. Если это свойство имеет значение TRUE, значение querydef является обновляемым; в противном случае это не так. Обновляемый объект означает, что определение запроса объекта querydef может быть изменено. Свойство Updatable объекта querydef имеет значение TRUE, если определение запроса может быть обновлено, даже если результирующий набор записей не обновляется. Чтобы получить это свойство напрямую, вызовите функцию-член CanUpdate запроса. Дополнительные сведения см. в разделе "Обновляемое свойство" в справке DAO.

m_bReturnsRecords
Указывает, возвращает ли запрос SQL сквозной запрос во внешнюю базу данных. Если это свойство имеет значение TRUE, запрос возвращает записи. Чтобы получить это свойство напрямую, вызовите CDaoQueryDef::GetReturnsRecords. Не все сквозные запросы SQL к внешним базам данных возвращают записи. Например, инструкция SQL UPDATE обновляет записи без возврата записей, а инструкция SQL SELECT возвращает записи. Дополнительные сведения см. в разделе "Свойство ReturnsRecords" в справке DAO.

m_strSQL
Инструкция SQL, определяющая запрос, выполняемый объектом querydef. Свойство SQL содержит инструкцию SQL, которая определяет, как выбраны записи, сгруппированы и упорядочены при выполнении запроса. Запрос можно использовать для выбора записей для включения в объект набора записей dynaset или snapshot-type. Вы также можете определить массовые запросы для изменения данных без возврата записей. Вы можете получить значение этого свойства напрямую, вызвав функцию-член GetSQL запроса.

m_strПодключение
Предоставляет сведения об источнике базы данных, используемой в сквозном запросе. Эта информация имеет форму строки подключения. Дополнительные сведения о строках подключения и о получении значения этого свойства см. в функции члена CDaoDatabase::Get Подключение.

m_nODBCTimeout
Время ожидания ядра СУБД Microsoft Jet до возникновения ошибки времени ожидания при выполнении запроса в базе данных ODBC. При использовании базы данных ODBC, например Microsoft SQL Server, могут возникнуть задержки из-за сетевого трафика или интенсивного использования сервера ODBC. Вместо того чтобы ждать неограниченное время, можно указать, сколько времени обработчик Microsoft Jet ожидает, прежде чем он выдает ошибку. Значение времени ожидания по умолчанию — 60 секунд. Вы можете получить значение этого свойства напрямую, вызвав функцию члена GetODBCTimeout запроса. Дополнительные сведения см. в разделе "Свойство ODBCTimeout" в справке DAO.

Замечания

Querydef — это объект класса CDaoQueryDef. Ссылки на Primary, Secondary и All выше указывают, как информация возвращается функцией-членом GetQueryDefInfo в классе CDaoDatabase.

Сведения, полученные функцией-членом CDaoDatabase::GetQueryDefInfo , хранятся в CDaoQueryDefInfo структуре. Вызов GetQueryDefInfo объекта базы данных, в коллекции QueryDefs которого хранится объект querydef. CDaoQueryDefInfo также определяет функцию-член Dump в отладочных сборках. Можно использовать Dump для дампа содержимого объекта CDaoQueryDefInfo. Класс CDaoDatabase также предоставляет функции-члены для прямого доступа ко всем свойствам, возвращаемым в объекте CDaoQueryDefInfo , поэтому, вероятно, не требуется вызывать GetQueryDefInfo.

При добавлении нового поля или объекта параметра в коллекцию Fields или Parameters объекта querydef возникает исключение, если базовая база данных не поддерживает тип данных, указанный для нового объекта.

Параметры даты и времени являются производными от компьютера, на котором был создан запрос или обновлен последний раз. В многопользовательской среде пользователи должны получать эти параметры непосредственно с файлового сервера с помощью команды net time , чтобы избежать несоответствий в параметрах свойств DateCreated и LastUpdated.

Требования

Header: afxdao.h

См. также

Структуры, стили, обратные вызовы и схемы сообщений
Класс CDaoQueryDef
Класс CDaoDatabase