DataDomain: DbDataDomain;
Свойство доступно только для чтения.
Свойство DataDomain возвращает тип данных поля, если оно предназначено для хранения многобайтовой информации.
Поле может хранить многобайтовую информацию, если свойство GetDbDataType возвращает значение DbDataType.String или DbDataType.Blob. Принцип работы с многобайтовой информацией описан в базе знаний в статье «Работа с полями, имеющими пользовательский тип данных».
Для выполнения примера предполагается наличие в репозитории БД с идентификатором «DB». В данной БД хранятся данные таблицы с физическим именем «TBL»
Sub Main;
Var
MB: IMetabase;
DB: IDatabaseInstance;
Com: IDalCommand;
Cur: IDalCursor;
CurField: IDalCursorField;
j, i: Integer;
Begin
MB := MetabaseClass.Active;
DB := MB.ItemById("DB").Open(Null) As IDatabaseInstance;
Com := DB.Connection.CreateCommand("Select * From TBL");
Cur := Com.CreateCursor;
For j := 0 To Cur.Fields.Count - 1 Do
CurField := Cur.Fields.Item(j);
i := CurField.GetDbDataType;
If (i = DbDataType.Blob) Then
Select Case CurField.DataDomain
Case DbDataDomain.None: Debug.WriteLine("Поле " + CurField.Name + " хранит двоичные данные");
Case DbDataDomain.Memo: Debug.WriteLine("Поле " + CurField.Name + " хранит текстовые данные");
Case DbDataDomain.Raw: Debug.WriteLine("Поле " + CurField.Name + " хранит пользовательские данные");
End Select;
End If;
End For;
Cur.Close;
Com.Close;
End Sub Main;
После выполнения примера в окно консоли будет выведена информация о полях таблицы, которые предназначены для хранения многобайтовой информации.
См. также: