IBX, FIBPlus, UIB, ADO, .Net и прочее-прочее-прочее, в общем все, что относится к созданию приложений, работающих с InterBase, Firebird и Yaffil - клиент-серверных, трехзвенных, консольных и т.п.
Модератор: kdv
-
Aleksa
- Сообщения: 3
- Зарегистрирован: 12 ноя 2004, 21:35
Сообщение
Aleksa » 12 ноя 2004, 21:44
Вставляю в таблицу Blob данные в stored procedure, и получаю "invalid BLOB ID". Это чё?
-
dimitr
- Разработчик Firebird
- Сообщения: 888
- Зарегистрирован: 26 окт 2004, 16:20
Сообщение
dimitr » 13 ноя 2004, 19:03
Бага, исправлена в FB 2.0. У тебя небось присвоение блоба идет через локальную переменную?
-
Гость
Сообщение
Гость » 13 ноя 2004, 19:51
dimitr писал(а):Бага, исправлена в FB 2.0. У тебя небось присвоение блоба идет через локальную переменную?
-
Aleksa
- Сообщения: 3
- Зарегистрирован: 12 ноя 2004, 21:35
Сообщение
Aleksa » 13 ноя 2004, 20:08
dimitr писал(а):Бага, исправлена в FB 2.0. У тебя небось присвоение блоба идет через локальную переменную?
У меня IB6.5. Присвоение через input parameter, имеющий тип Blob.
Код: Выделить всё
INSERT INTO ... (..., <Blob>) VALUES (..., :<Blob>)
Вот. И здесь он ругается.
-
dimitr
- Разработчик Firebird
- Сообщения: 888
- Зарегистрирован: 26 окт 2004, 16:20
Сообщение
dimitr » 14 ноя 2004, 11:51
Ошибка достаточно давняя и, видимо, Борландом до сих пор не исправленная. Либо пиши блобы с клиента без процедур, либо пробуй более свежие версии IB (или FB 1.5).
-
kdv
- Forum Admin
- Сообщения: 6595
- Зарегистрирован: 25 окт 2004, 18:07
Сообщение
kdv » 15 ноя 2004, 12:19
Aleksa писал(а):У меня IB6.5. Присвоение через input parameter, имеющий тип Blob.
Код: Выделить всё
INSERT INTO ... (..., <Blob>) VALUES (..., :<Blob>)
Вот. И здесь он ругается.
чуть подробнее бы код привел. второй раз случаем этот же блоб никуда не пишешь?
-
Aleksa
- Сообщения: 3
- Зарегистрирован: 12 ноя 2004, 21:35
Сообщение
Aleksa » 20 ноя 2004, 16:35
kdv писал(а):чуть подробнее бы код привел. второй раз случаем этот же блоб никуда не пишешь?
В процедуре дважды присутствует INSERT блоба, но вставляется-то он один раз! Примерно так:
Код: Выделить всё
...IF <условие> THEN
... INSERT(... <blob> )...
ELSE
... INSERT(... <blob> )...
Так нельзя?
-
VictorIn
- Сообщения: 26
- Зарегистрирован: 25 мар 2005, 22:16
Сообщение
VictorIn » 25 мар 2005, 22:20
dimitr писал(а):Бага, исправлена в FB 2.0. У тебя небось присвоение блоба идет через локальную переменную?
У меня с Yaffil 884 тоже самое. Мож уже исправили?
-
starling13
- Сообщения: 8
- Зарегистрирован: 02 мар 2005, 14:56
Сообщение
starling13 » 12 ноя 2006, 15:22
У меня процедура просто вставляет в таблицу входной параметр типа BLOB SUB_TYPE 0. В клиенте на Delphi этот параметр читается
методом TField.LoadFromStream(buffer, ftblob).
Первый инсерт проходит отлично, на втором invalid blob id.
Firebird 2.0 RC5.