CDaoFieldInfo структура имеет следующую форму:
структура CDaoFieldInfo
{
nbsp; CString m_str&Name; / / Главная
короткие m_nType; / / Главная
длинные m_lSize; / / Главная
длинные m_lAttributes; / / Главная
короткие m_nOrdinalPosition; / / Вторичные
BOOL m_bRequired; / / Вторичные
BOOL m_bAllowZeroLength; / / Вторичные
длинные m_lCollatingOrder; / / Вторичные
CString m_strForeignName; / / Вторичные
CString m_strSourceField; / / Вторичные
CString m_strSourceTable; / / Вторичные
CString m_strValidationRule; / / Все
CString m_strValidationText; / / Все
CString m_strDefaultValue; / / Все
}
CDaoFieldInfo структура содержит сведения о объект поля, определенные для объектов доступа к данным (DAO). Ссылки на начальное, среднее и все указанные выше показывают, каким образом информация возвращается функцией-членом GetFieldInfo в классах, CDaoTableDef, CDaoQueryDefи CDaoRecordset.
Объекты-поля не представлен класс MFC. Вместо этого, объектов DAO нижележащие объекты MFC из следующих классов содержат наборы полей объектов: CDaoTableDef, CDaoRecordsetи CDaoQueryDef. Эти классы снабжения функции-члены для доступа к некоторым отдельным элементам поля информации или доступа к их все сразу с CDaoFieldInfo объектом вызова функции-члена GetFieldInfo , содержащего объект.
Помимо его использования для изучения свойств объекта можно использовать CDaoFieldInfo для создания входной параметр для создания новых полей в tabledef. Более простые варианты доступны для выполнения этой задачи, но если вы хотите более точного управления, можно использовать версию CDaoTableDef::CreateField , которая принимает параметр CDaoFieldInfo.
Члены
m_strName
Уникально имя объекта поля. Подробности в разделе «Свойства Name» в справке DAO.
m_nType
Значение, определяющее тип данных поля. Подробности в разделе «Свойства Type» в справке DAO. Значение этого свойства может быть одним из следующих:
Примечаниеnbsp; Не следует использовать типы данных строки для двоичных данных. Это вызывает ваши данные через Unicode/A&NSI перевода слой, что приводит к увеличению накладных расходов и возможно неожиданное перевод.
m_lSize
Значение, указывающее максимальный размер в байтах, Дао поле объекта, который содержит текст или фиксированного размера поля объекта, содержащий текст или числовые значения. Подробности в разделе «Свойства Size» в справке DAO. Размеры могут быть одним из следующих значений:
| Тип | Размер (байт) | Описание |
| dbBoolean | 1 байт | Да/нет (такой же как истина/ложь) |
| dbByte | 1 | Байт |
| dbInteger | 2 | Целое число |
| dbLong | 4 | Длинный |
| dbCurrency | 8 | Валюта (COleCurrency) |
| dbSingle | 4 | Один |
| dbDouble | 8 | Двухместный |
| dbDate | 8 | Дата/время (COleDateTime) |
| dbText | 1 - 255 | Текст (CString) |
| dbLongBinary | 0 | Длинные двоичный (OLE-объекта; CByteArray; использовать вместо CLongBinary) |
| dbMemo | 0 | Памятка (CString) |
| dbGUID | 16 | Глобально уникальный идентификатор/универсально уникальный идентификатор, используемый с удаленных вызовов процедур. |
m_lAttributes
Задает характеристики объекта поля, содержащегося в tabledef, набор записей, querydef или объект индекса. Возвращаемое значение может быть сумма этих констант, созданные с C++ оператор побитового или (|):
При проверке установки этого свойства, можно использовать C++ побитового- И оператор (amp;) для проверки конкретного атрибута. При установке нескольких атрибутов, можно объединить их, объединяя соответствующие константы с помощью оператора побитового или (|). Подробности в разделе «Свойства &Attributes» в справке DAO.
m_nOrdinalPosition
Значение, которое указывает числовой порядок, в котором требуется поле представлено объектом DAO поля для отображения относительно других полей. Можно задать это свойство с CDaoTableDef::CreateField. Подробности в разделе «OrdinalPosition собственность» в справке DAO.
m_bRequired
Указывает, требуется ли объект DAO поля значение не Null. Если это свойство имеет значение TRUE, поле не поддерживает значения Null. При необходимости имеет значение FALSE, поле может содержать значения Null, а также показателей, удовлетворяющих условиям, указанным AllowZeroLength и условие на значение свойства параметров. Подробности в разделе «Требуется собственности» в справке DAO. Можно задать это свойство для tabledef с CDaoTableDef::CreateField.
m_bAllowZeroLength
Указывает ли является пустой строкой ("") является допустимым значением DAO объекта поля с типом данных Text или Memo. Если это свойство имеет значение TRUE, допустимым значением является пустая строка. Можно присвоить этому свойству значение FALSE чтобы убедиться, что нельзя использовать пустую строку для задания значения поля. Подробности в разделе «AllowZeroLength собственности» в справке DAO. Можно задать это свойство для tabledef с CDaoTableDef::CreateField.
m_lCollatingOrder
Определяет последовательность порядок сортировки в тексте для сравнения строк или сортировки. Подробности в разделе «Настройка Windows реестра параметров по данным доступа» в справке DAO. Список возможных значений, возвращаемых содержится m_lCollatingOrder член CDaoDatabaseInfo структуры. Можно задать это свойство для tabledef с CDaoTableDef::CreateField.
m_strForeignName
Значение, указывающее, в отношениях, имя объекта поля DAO внешней таблицы, соответствующее полю в главной таблице. Подробности в разделе «ForeignName собственность» в справке DAO.
m_strSourceField
Указывает имя поля, которое является оригинальный источник данных для объекта поля DAO, содержащихся в tabledef, набора записей или объекта querydef. Это свойство указывает исходное имя поля, связанного с объектом поля. Например можно использовать это свойство для определения первоначального источника данных в поле запроса, имя которого не относится к имени поля в базовой таблице. Подробности в разделе «SourceField, SourceTable свойства» в справке DAO. Можно задать это свойство для tabledef с CDaoTableDef::CreateField.
m_strSourceTable
Указывает имя таблицы, которая является оригинальный источник данных для объекта поля DAO, содержащихся в tabledef, набора записей или объекта querydef. Это свойство указывает исходное имя таблицы, связанные с объектом поля. Например можно использовать это свойство для определения первоначального источника данных в поле запроса, имя которого не относится к имени поля в базовой таблице. Подробности в разделе «SourceField, SourceTable свойства» в справке DAO. Можно задать это свойство для tabledef с CDaoTableDef::CreateField.
m_strValidationRule
Значение, выполняется проверка данных в поле, как изменяются или добавляются в таблицу. Подробности в разделе «Свойства условие на значение» в справке DAO. Можно задать это свойство для tabledef с CDaoTableDef::CreateField.
Соответствующие сведения о tabledefs см. в m_strValidationRule член CDaoTableDefInfo структуры.
m_strValidationText
Значение, которое указывает текст сообщения, которое отображает приложение, если значение объекта поля DAO не удовлетворяет условию, указанному в параметре свойства Условие на значение. Подробности в разделе «Свертыванию» в справке DAO. Можно задать это свойство для tabledef с CDaoTableDef::CreateField.
m_strDefaultValue
Значение по умолчанию объекта поля DAO. При создании новой записи, значение свойства DefaultValue вводится автоматически как значение для поля. Подробности в разделе «Свойства DefaultValue» в справке DAO. Можно задать это свойство для tabledef с CDaoTableDef::CreateField.
Комментарии
Информация по GetFieldInfo функции-члена (класса, содержащего поле) хранится в структуре CDaoFieldInfo . Вызовите функцию-член GetFieldInfo содержащего объекта, в чьи коллекции Fields хранится объект поля. CDaoFieldInfo также определяет функцию-член Dump в построениях отладки. Используйте дамп сбрасывать содержимое объекта CDaoFieldInfo.
Для информации об использовании этот и другие структуры MFC DAO, обратитесь к статье DAO коллекции: получение информации О объектов DAO в Руководстве по Visual C++ программист.
См. также CDaoTableDef::GetFieldInfo, CDaoRecordset::GetFieldInfo, CDaoQueryDef::GetFieldInfo