Вниз
Скачать: CL | DM;

Как на SQL записать текстовую строку в BLOB поле?   Найти похожие ветки 

 
Shama_n ©   (2004-07-13 15:36) [0]

Как правильно сформировать SQL запрос для записи текстовой строки в BLOB поле. При последовательном доступе все просто, DBMemo хранит в нем данные без всяких проблем а вот обновить запись с помощью SQL запроса с клиентских машин не получается


 
Johnmen ©   (2004-07-13 15:53) [1]

А что, так не работает
INSERT INTO ... (...,BLOBField,...) VALUES (...,""Торопиться не надо..." (c)",...)


 
Shama_n ©   (2004-07-13 16:05) [2]

Johnmen> Так не работает
IB ругается что тип данных не соответствует


 
Johnmen ©   (2004-07-13 16:14) [3]

>Shama_n ©

Через параметр получится всегда :)

INSERT INTO ... (...,BLOBField,...) VALUES (...,:BLOBParam,...)

...ParamByName("").Value:=""Торопиться не надо..." (c)";
или
...ParamByName("").LoadFromStream(...);


 
Shama_n ©   (2004-07-13 16:45) [4]

Немного не понял про параметры. Если быть точней то добавление данных не требуется, нужно редактирование

Вот пример:
UPDATE ITEMS
ITEMDESCR = "Проверка"
WHERE NAMEITEM = "...";

ITEMDESCR это BLOB поле.

имеешь ввиду так?
UPDATE ITEMS
ITEMDESCR = VALUES ("Проверка")
WHERE NAMEITEM = "...";


 
Johnmen ©   (2004-07-13 16:47) [5]

UPDATE ITEMS
ITEMDESCR = :BLOBParam
WHERE NAMEITEM = "...";


 
Курдль ©   (2004-07-13 16:53) [6]

А я вот думаю - нафиг данные из DBMemo хранить в BLOB-поле?


 
Shama_n ©   (2004-07-13 17:17) [7]

Курдль © > Текст большой, VARCHAR может не хватить


 
Shama_n ©   (2004-07-13 19:31) [8]

Johnmen ©> Раньше с параметрами не работал поэтому тяжко немного
Где я ошибаюсь?:
В параметре DataType выставляю  ftBlob
Value Type в String
в Value пишу тектовую строку
После запуска SQL запроса вылетает ошибка Unexpected end of command


 
афвуд   (2004-07-13 19:36) [9]

Можно же прямо через TBlobField - у него там есть метод SavetoStram и LoadFromStream.
А у TString тоже. Вот можно и организовать обмен через TMemoryStream.
Utvjhhhjz может и больше но сдаётся мне так правильней будет.


 
афвуд   (2004-07-13 19:36) [10]

Исправляя предыдущщее:

Можно же прямо через TBlobField - у него там есть метод SavetoStram и LoadFromStream.
А у TStrings тоже. Вот можно и организовать обмен через TMemoryStream.
Геморрроя может и больше, но сдаётся мне так правильней будет.


 
Shama_n ©   (2004-07-13 19:51) [11]

как TMemoryStream может помочь в формировании SQL запроса?


 
sniknik ©   (2004-07-13 20:01) [12]

Shama_n ©   (13.07.04 19:51) [11]
им можно загонять данные в блобовые переменные. и правильнее (чем в запрос вставлять), и ошибок меньше (в большом тексте больше вероятности недопустимых символов для прямой вставки в запрос) и запрос читабельнее в общем получится (маленькая переменная вместо большого куска текста разрывающено запрос).


 
Shama_n ©   (2004-07-13 21:20) [13]

Принцип дальнейших действий ясен, осталось добиться рабочего кода :)


 
Shama_n ©   (2004-07-14 14:00) [14]

Получилось наконец через TMemoryStream в пареметр SQL запроса запихать. Спасибо всем за помощь



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

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.023 c
1-1090827149
Delphi5.01
2004-07-26 11:32
2004.08.08
Preview QReport


14-1090491947
menart
2004-07-22 14:25
2004.08.08
Интересные события в жизни программистов


1-1090216972
Michael
2004-07-19 10:02
2004.08.08
Отследить вращение колесика мыши в мышки вне приложения


4-1088494582
Тимохов
2004-06-29 11:36
2004.08.08
Область только для чтения.


4-1088235176
Sormy
2004-06-26 11:32
2004.08.08
Как извлечь версию файла из произвольного файла?




   Наверх