Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.02.27;
Скачать: CL | DM;

Вниз

Query -> Blob   Найти похожие ветки 

 
fess ©   (2005-01-30 21:51) [0]

Здравствуйте мастера!!
Записываю в блоб поле через поток рисунок, но delphi выдает ошибку ;(...
Код следующий:

Bitmap := TMemoryStream.Create;
Image1.Picture.Bitmap.SaveToStream(Bitmap);
dm.ADOQueryBlob.Active:=false;
dm.ADOQueryBlob.SQL.Clear;
dm.ADOQueryBlob.SQL.Add("INSERT INTO Answer (Image) VALUES (:Blob) WHERE Id_Answer = "+IntToStr(Id_Answer));
dm.ADOQueryBlob.Parameters.ParamByName("Blob").LoadFromStream(Bitmap, ftBlob);
dm.ADOQueryBlob.ExecSQL;
Bitmap.Free;

Выдает ошибку типа В инструкции Insert into ... ОШИБКА!
Помогите!!! Я уже замучился!


 
Anatoly Podgoretsky ©   (2005-01-30 21:57) [1]

Image вроде резервированое имя


 
Sergey_Masloff   (2005-01-30 21:59) [2]

Anatoly Podgoretsky ©   (30.01.05 21:57) [1]
Да там все неправильно же ж. В INSERT INTO... Values() никакого WHERE быть не может ;-)


 
fess ©   (2005-01-30 22:07) [3]

Пардон... ;( Совсем заработался.. Я исправил и выдает все тоже самое!

dm.ADOQueryBlob.Active:=false;
dm.ADOQueryBlob.SQL.Clear;
dm.ADOQueryBlob.SQL.Add("UPDATE Answer SET Image=:Blob WHERE Id_Answer = "+IntToStr(Id_Answer));
dm.ADOQueryBlob.Parameters.ParamByName("Blob").LoadFromStream(Bitmap, ftBlob);
dm.ADOQueryBlob.ExecSQL;

Image - не зарезервированное слово, т.к. с Table работает!


 
Sergey_Masloff   (2005-01-30 22:17) [4]

fess ©   (30.01.05 22:07) [3]
Ну уж BLOB 100% зарезервированное слово


 
fess ©   (2005-01-30 22:22) [5]

Пишет ошибка синтаксиса в инструкции UpDATE!
Даже если я называю параметр blobikб то все равно возникает вышеназванная ошибка!
Она меня уже достала!
Меня Query всем устраивает кроме невозможности с помощью него записывать данные в BLOB поля!
По крайней мере у меня ничего не получается!
Кто-нибудь видит в этом коде ошибку?!


 
sniknik ©   (2005-01-30 23:01) [6]

> Кто-нибудь видит в этом коде ошибку?!
кроме тех которые уже озвучили? (в [1] и [2]) исправлена только одна.

dm.ADOQueryBlob.SQL.Add("UPDATE Answer SET [Image]=:Blob WHERE Id_Answer = "+IntToStr(Id_Answer));

а вот параметр может иметь имя и из зарезервированных... (вроде бы, проверять не буду. хотя и не хорошо это...)


 
Соловьев ©   (2005-01-31 11:06) [7]


> dm.ADOQueryBlob.SQL.Add("UPDATE Answer SET [Image]=:Blob
> WHERE Id_Answer = "+IntToStr(Id_Answer));

:)
А почему одно через параметр, другое через соединение строк? Уж если так пошла жара, можно и болб поле в строку перегнать и строить запрос через конкатенацию строк :)



Страницы: 1 вся ветка

Текущий архив: 2005.02.27;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.026 c
1-1107787392
Tack
2005-02-07 17:43
2005.02.27
TSpeedButton, WinXP, XPManifest


6-1096972146
Zeqfreed
2004-10-05 14:29
2005.02.27
SSL


1-1108013802
kolos_rus
2005-02-10 08:36
2005.02.27
Как перенести DELPHI 7 со всеми прибамбасами на другой ПК?


1-1108291673
TeNY
2005-02-13 13:47
2005.02.27
как загрузить в TBitmap HBITMAP?


3-1107172647
a3a3ello
2005-01-31 14:57
2005.02.27
Глючит TDBgrid