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

Вниз

FireBird BLOB   Найти похожие ветки 

 
Zabludshiy   (2007-07-16 16:58) [0]

Доброго времени суток. Помогите плс. Не получается изменить блоб. На форме IBDatabase, к нему подключен IBDataset и IBSQL. В таблице (firebird) есть поле типа BLOB. При попытке изменить его (там только текст должен быть) делаю следующим образом:

...
   IBDS1.Edit;
   IBDS1MEMO.Value:=str;
   IBDS1.Post;
...

Пишет "Cannot modify a read-only dataset".
Само поле - не read only, в IBDataset не нашел даже такого свойства. Другие поля (не блобы) изменяю легко через IBSQL,

Может туплю, подскажите как бороться или ссылку на внятную статью/книгу про работу с блобами IB/FB в delphi.

Delphi 6, FireBird


 
Desdechado ©   (2007-07-16 17:01) [1]

UPDATE tbl SET blb = :prm WHERE id = :x

и читать справку Modifying read-only datasets


 
Zabludshiy   (2007-07-16 18:39) [2]

Через update, как я понимаю, не получится передать строку больше 32к, в принципе я так и делаю, но не уверен, что со временем этого не будет мало...


 
engine ©   (2007-07-16 18:43) [3]

> [2] Zabludshiy   (16.07.07 18:39)

не правильно ты всё понимаешь.


 
Zabludshiy   (2007-07-16 18:58) [4]

Дык почему тогда когда выполняется такой код

   IBSQL1.Close;
   IBSQL1.SQL.Clear;
   IBSQL1.SQL.Add("update ORGANIZATIONS set ");
   IBSQL1.SQL.Add("MEMO = """+str+""" ");
   IBSQL1.SQL.Add("where ORG_ID = "+IBDS1.fieldbyname("ORG_ID").AsString );
   IBSQL1.ExecQuery;
   IBDS1.Close;
   IBDS1.Open;

и размер строки str около 100К вываливается ошибка, а если размер около 10К - всё нормально записывается?


 
engine ©   (2007-07-16 19:06) [5]

> [4] Zabludshiy   (16.07.07 18:58)

А при чем здесь блоб?


 
Zabludshiy   (2007-07-16 19:07) [6]

MEMO - это и есть блоб.


 
engine ©   (2007-07-16 19:12) [7]

> [6] Zabludshiy   (16.07.07 19:07)

То, что тебе написали в [1] и то, что ты написал в [4] совершенно разные вещи.
Используй параметры.


 
Zabludshiy   (2007-07-16 19:16) [8]

Пробовал несколькими способами записывать этот блоб, так как написано
в Zabludshiy   (16.07.07 16:58);
потом через IBDS1MEMO.loadfromstream;
получилось только так как Zabludshiy   (16.07.07 18:58) [4],
но я так понимаю что это не совсем правильно.
Я хочу понять, почему не работает [1]


 
engine ©   (2007-07-16 19:18) [9]

> [8] Zabludshiy   (16.07.07 19:16)
> Я хочу понять, почему не работает [1]

Ну у меня нет оснований полагать, что [1] не работает.
В моих проектах отлично работает.


 
Zabludshiy   (2007-07-16 19:22) [10]

Вот и я подозреваю, что где-то что-то в свойствах нето... Спасибо, будем разбираться.


 
Zabludshiy   (2007-07-16 19:25) [11]

Заработало. Спасибо всем за помощъ!



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

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

Наверх




Память: 0.46 MB
Время: 0.053 c
5-1163595817
Vladix
2006-11-15 16:03
2007.12.02
Прозрачный компонент (наследник TWinControl)


15-1193162399
Студент
2007-10-23 21:59
2007.12.02
Найти величины углов


2-1194476091
TankMan
2007-11-08 01:54
2007.12.02
Подскажите пожалуйста почему выдается ошибка в TidFTP?


15-1193483009
VovaK
2007-10-27 15:03
2007.12.02
Кнопка со стрелкой вниз.


11-1179326027
Ned
2007-05-16 18:33
2007.12.02
Пример по работе с PNG





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский