Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.08.08;
Скачать: 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 вся ветка

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

Наверх




Память: 0.5 MB
Время: 0.024 c
1-1090565921
Jaxtor
2004-07-23 10:58
2004.08.08
Уничтожение всех объектов данного класса


3-1089631537
kj
2004-07-12 15:25
2004.08.08
Как выбрать текущую дату в interbase?


6-1086790925
Вован_
2004-06-09 18:22
2004.08.08
Как узнать, юзает ли кто-то по сети файл в общей папке?


1-1090528348
AlexR
2004-07-23 00:32
2004.08.08
Как отследить вызов popup меню в ТаскБаре


1-1090902631
race1
2004-07-27 08:30
2004.08.08
смещение