![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
FireBird+BLOB+Dynamic Array - не работает ... [D7, FireBird]
shulgin_dmitrii © (2004-07-28 15:20:00)Здравствуйте уважаемые.
Замучился я с одной задачкой. Помогите чем сможете.
Цель:
записать динамический массив в BLOB поле
таблицы FireBird'a
Мой код:
type TBuffer = packed record
values:array of array[0..1] of word;
DTime:TdateTime;
end;
//-----------------------
var i, cnt:integer;
arrStream:TMemoryStreAm;
Save_Buffer:TBuffer;
//-----------------------
if SizeOf(save_buffer) > 0 then
begin
arrStream:= TMemoryStream.Create;
arrStream.Clear;
arrStream.Position := 0;
arrStream.Write(save_buffer,SizeOf(save_buffer));
arrStream.Position := 0;
with IBTable do
begin
Active:=true;
insert;
(fieldbyname('VALUE') as TBlobField).LoadFromStream(ArrStream);
post;
Active:=false;
end;
IBtable.ApplyUpdates;
arrStream.free;
end;
//-----------------------
скрипт для создания таблицы
CREATE TABLE LIVE ( "VALUE" BLOB SUB_TYPE 0 SEGMENT SIZE 80);
В результате выполнения имеем:
1. Ругань в Delphi
-------------------------
Dynamic SQL Error
SQL error code -104
Unexpected end of command
-------------------------
2. Записи в табличку пишутся, НО
НЕ удаляются даже средстваим IBExpert
Отсюда вопросы:
1. Корректен ли код
2. Почему записи не удаляются
3. Как сделать считывание из BLOBa обратно в динамический массив.
Заранее спасибо.
Johnmen (2004-07-28 16:28:00) [1]>shulgin_dmitrii © (28.07.04 16:11) [3]
>заходите на
Уже. Давно...:)
shulgin_dmitrii (2004-07-28 16:11:00) [2]to Johnmen
ругается на post
заходите на
http://www.sql.ru/forum/actualthread.aspx?bid=2&tid=110648
Johnmen (2004-07-28 15:36:00) [3]>IBtable.ApplyUpdates;
Это явно не отсюда...:)
В целом вроде нормально.
>1. Ругань в Delphi
На что именно ?
Sandman25 (2004-07-28 15:26:00) [4]Дин. массивы - это указатели.