Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

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]

Дин. массивы - это указатели.


Наверх

Титульная страница Поиск, карта сайта Написать письмо