IDtFieldDefinition.Size

Синтаксис

Size: Integer;

Описание

Свойство Size определяет размер поля источника/приемника. Под размером понимается общая длина поля.  

Пример

Sub UserProc;

Var

FProvider : IDtOleDbProvider;

Prov: IDtProvider;

FConsumer : IDtOleDbConsumer;

ConStr : String;

Fields, Fields_Cons : IDtFieldDefinitions;

Field_Prov : IDtFieldDefinition;

i : Integer;

Begin

// источник и его поля

FProvider := New DtOleDbProvider.Create;

ConStr := "Provider=MSDAORA.1;Password=student0;User ID=student0;Data Source=test;Persist Security Info=True";

FProvider.ConnectionString := ConStr;

FProvider.Query := "select * from TableProvider";

FProvider.Open;

Fields := FProvider.Fields;

Prov := FProvider As IDtProvider;

// создаем приемник, создаем его поля

FConsumer := New DtOleDbConsumer.Create;

FConsumer.ConnectionString := ConStr;

FConsumer.Table := "New_TAB_CONS"; // новая таблица

Fields_Cons := FConsumer.Fields;

Fields_Cons.Clear;

For i:=0 To Fields.Count-1 Do

Field_Prov := Fields.Item(i);

Fields_Cons.Add;

Fields_Cons.Item(i).Name := Field_Prov.Name;

Fields_Cons.Item(i).DataType := Field_Prov.DataType;

Fields_Cons.Item(i).Size := Field_Prov.Size;

Fields_Cons.Item(i).Precision := Field_Prov.Precision;

End For;

FConsumer.PutProvider(Prov); // Экспорт

Prov.Close;

End Sub UserProc;

После выполнения примера будет осуществлен экспорт данных из указанного источника в приемник. Экспорт осуществляется в новую таблицу, для которой создан набор полей, идентичных полям источника.

См. также:

IDtFieldDefinition