Скачал из интернета компонент, позволяющий хранить в списке целые числа,
работает также как TStringList, но не со строками, а с числами.
И вот не могу сообразить как сохранить целый компонент со списком чисел в BLOB-поле таблицы базы данных. Пробовал это сделать так:
Код:
1 2 3 4 5 6 7 8 9 10 11 12 13 | var
Stream: TStream;
IntList: TxIntegerList;
begin
IntList := TxIntegerList . Create;
Stream := DataSet1 . CreateBlobStream(
DataSet1 . FieldByName( 'BLOB_FIELD' ,
bmWrite);
IntList . Add( 10 );
Stream . Write (IntList, SizeOf(IntList));
Stream . Free;
IntList . Free;
end ;
|
A считать данные из BLOB-поля обратно в компонент думал так:
Код:
1 2 3 4 5 | ...
Stream := DataSet1 . CreateBlobStream(DataSet1 . FieldByName( 'BLOB_FIELD' , bmRead);
...
Stream . Read(IntList, Stream . Size);
...
|
Это не работает... В BLOB поле таблицы пишется информация, а вот когда считываю - IntList.Count = 0
Подскажите, как написать правильно?