Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.04.01;
Скачать: [xml.tar.bz2];

Вниз

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

 
Malder   (2002-03-05 19:22) [0]

Как передавать поле BLOB при использовании UPDATE ?


 
Malder   (2002-03-05 19:58) [1]

Проблема в том, что как я понял, в UPDATE нельзя применять параметры. Типа SET Pole=:p1


 
evgeg   (2002-03-05 20:57) [2]

Параметры не могут быть типа blob в Дельфи 1-2. В Дельфи 3 уже можно. У тебя какая? Или ты не BDE используешь?


 
Malder   (2002-03-06 15:38) [3]

У меня пятая Delphi (это, кстати, в заголовке топика отражено). Я использую BDE (то есть Tquery и Tdatabase).

Проблема поподробнее вот в чем.
Если написать что-то вроде:

query1.SQL.add(UPDATE Table SET Pole=:p1 WHERE Pole2="TEST");
query1.params.FieldByName("p1")asBlob:=Memo1.lines.text;
query1.ExecSQL;


То он говорит, что ему что-то не нравится. Точно не помню, типа не поддерживаются параметры для данного оператора (Update).

А как тогда передавать Blob поля для обновления ?
вот в чем вопрос...


 
Reindeer Moss Eater   (2002-03-06 15:58) [4]

Assign, LoadFromFile, ....


 
Malder   (2002-03-06 16:07) [5]

Reindeer Moss Eater, не понял. Можно поподробнее ?
Где писать Assign ?
query1.params.FieldByName("p1").assign(...) ?
не пойдет...


 
Lusha   (2002-03-06 17:00) [6]

>Malder
1. У TParams нет метода FieldByName
2. А почему бы Вам не написать так:
query1.params.paramByName("p1").AsString:=Memo1.lines.text;

Удачи



 
Reindeer Moss Eater   (2002-03-06 18:21) [7]


Query1.ParamByName("p1").Assign(Memo1.Lines);
Query1.ParamByName("p1").LoadFromFile("C:\Test.txt");
Query1.ParamByName("p1").LoadFromStream(SomeStream,ftMemo);



 
Malder   (2002-03-06 22:41) [8]

Я просто в шоке. НАРОД.
Выполняю такой код:


SQL.clear;
params.Clear ;
SQL.add("UPDATE Table SET Fax="222" WHERE Telefon="111"");
execSQL;


ЧТО ЗДЕСЬ МОЖЕТ БЫТЬ НЕПРАВИЛЬНОГО ?!
Видно, из-за этого у меня и Blob не работает...
Сначала у меня был сложный UPDATE, я его постепенно упрощал и вот доупращался... КУДА ПРОЩЕ ? Я вообще ничего не понимаю.

Причем, если запись, где телефон равен 111 не существует, то ошибок нет, а если есть такая запись, то:

... raised Exception class EDBEngineError with message "General SQL error. feature not supported
BLOB and array data types not supported for compare operation". Process stopped. Use step or Run to continue."


ЧТО ЗА ОШИБКА ? ОТКУДА ? ПОЧЕМУ ? Я необрываю код. Он такой и есть. Пользователю под которым работаю разрешен UPDATE таблицы....
ой блииин.....у кого ХОТЬ какие идеи есть ?


 
Lusha   (2002-03-07 09:17) [9]

А какой тип у поля Telefon?


 
Malder   (2002-03-07 10:06) [10]

Что у Telefon, что у Fax поле типа Char(n)
блин... вот надо ж так...


 
Lusha   (2002-03-07 10:10) [11]

А какова величина n?


 
Malder   (2002-03-07 23:25) [12]

n=16 и у телефона и у факса


 
Lusha   (2002-03-08 10:20) [13]

А этот запос средствами IB выполняется?


 
Malder   (2002-03-08 13:13) [14]

Lusha, что-то я не очень понял. Если сервер Interbase (а у меня Interbase), то естесственно запрос выполняется интербэйсом.

Только вот я слышал, Query как то может преобразовывать SQL комманды перез отправкой на сервер, но тут я ничего не знаю...


 
Lusha   (2002-03-08 16:04) [15]

Я имел в виду не чем он (запрос) выполняется, а выполняется ли он в принципе...



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

Форум: "Базы";
Текущий архив: 2002.04.01;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.006 c
4-338
Romul
2002-01-29 11:53
2002.04.01
Как изменить цвет заголовка окна?


4-343
yus
2002-01-30 22:28
2002.04.01
Как отформатировать диск А: не выводя окна


1-214
Ivan_A
2002-03-20 01:26
2002.04.01
Как притрупить форму?


7-326
LinX
2001-12-21 01:09
2002.04.01
Виртуальный принтер


4-353
Rumrunner
2002-01-27 04:45
2002.04.01
Всем привет!





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский