|
|
|
FireBird+BLOB+Dynamic Array - не работает
|
|||
|---|---|---|---|
|
#18+
Здравствуйте уважаемые. Замучился я с одной задачкой. Цель: записать динамический массив в BLOB поле таблицы FireBird'a Мой код: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. скрипт для создания таблицы Код: plaintext В результате выполнения имеем: 1. Ругaнь ------------------------- Dynamic SQL Error SQL error code -104 Unexpected end of command ------------------------- 2. Записи в табличку пишутся, НО НЕ удаляются даже средстваим IBExpert Отсюда вопросы: 1. Корректен ли код 2. Почему записи не удаляются 3. Как сделать считывание из BLOBa обратно в динамический массив. Заранее спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2004, 15:31:50 |
|
||
|
FireBird+BLOB+Dynamic Array - не работает
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. - ну, что это такое? Это же ссылка на объект, она всегда 4 байта размером... Код: plaintext - см.выше Дальше уже можно ничего не говорить... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2004, 15:43:33 |
|
||
|
FireBird+BLOB+Dynamic Array - не работает
|
|||
|---|---|---|---|
|
#18+
To mv А как правильно ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2004, 15:47:30 |
|
||
|
FireBird+BLOB+Dynamic Array - не работает
|
|||
|---|---|---|---|
|
#18+
Ой, что это я - у Вас же не объект, а запись... Ну, все равно - она у вас ВСЕГДА фиксированного размера. Нужно анализировать размер поля записи. Например: Length(Save_Buffer.values); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2004, 15:51:16 |
|
||
|
FireBird+BLOB+Dynamic Array - не работает
|
|||
|---|---|---|---|
|
#18+
To mv Сейчас проверю ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2004, 15:53:50 |
|
||
|
FireBird+BLOB+Dynamic Array - не работает
|
|||
|---|---|---|---|
|
#18+
To mv ошибка, замеченная вами, в моём случае не критична (пока), но всё равно спасибо, у меня почему то при выполнении оператора Post вылазит ошибка, указанная выше with IBTable do begin Active:=true; insert; (fieldbyname('VALUE') as TBlobField).LoadFromStream(ArrStream); post ; Вот здесь ругается - SQL error = -104 Active:=false; end; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2004, 16:02:04 |
|
||
|
FireBird+BLOB+Dynamic Array - не работает
|
|||
|---|---|---|---|
|
#18+
>mv >- ну, что это такое? Это же ссылка на объект, она всегда 4 байта размером... Не надо горячиться...:) Ты не прав. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2004, 16:04:28 |
|
||
|
FireBird+BLOB+Dynamic Array - не работает
|
|||
|---|---|---|---|
|
#18+
Извините, уважаемый, ну, конечно, может, это не мое дело, но может быть, раз уж Вы используете IBX, быдем использовать TIBDataSet вместо TIBTable? Вот и Борланды советыют это... Я довольно долго пользовался IBX - ами. Классные. Только не забудьте Update 7.08 поставить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2004, 16:10:06 |
|
||
|
FireBird+BLOB+Dynamic Array - не работает
|
|||
|---|---|---|---|
|
#18+
to mv Уже качаю IBX 7.08 для Delphi 7 Обновлю IBX и попробую воспользоваться вашим советом ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2004, 16:16:25 |
|
||
|
FireBird+BLOB+Dynamic Array - не работает
|
|||
|---|---|---|---|
|
#18+
>shulgin В хелпе, который по F1, по методу CreateBlobStream есть даже пример, как надо писать...:) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2004, 16:25:54 |
|
||
|
FireBird+BLOB+Dynamic Array - не работает
|
|||
|---|---|---|---|
|
#18+
2 Johmen Не надо горячиться...:) Ты не прав. А что не так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2004, 16:33:08 |
|
||
|
FireBird+BLOB+Dynamic Array - не работает
|
|||
|---|---|---|---|
|
#18+
mvА что не так? Save_Buffer никакая не "ссылка на объект", а переменная типа TBuffer. И её SizeOf = 12 вполне понятен. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2004, 16:38:45 |
|
||
|
FireBird+BLOB+Dynamic Array - не работает
|
|||
|---|---|---|---|
|
#18+
А, ну я уже поправился... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2004, 16:41:35 |
|
||
|
FireBird+BLOB+Dynamic Array - не работает
|
|||
|---|---|---|---|
|
#18+
Извини. Я не заметил... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2004, 16:44:29 |
|
||
|
FireBird+BLOB+Dynamic Array - не работает
|
|||
|---|---|---|---|
|
#18+
Чего то у меня обновления не ставятся Скачал http://www.ibase.ru/v6/ibx708del.zip Запустил Перезагрузился Читаю Place the additional package code in the source directory of your Bold install. Open the Bold40D7IB.dpk package and compile it. The updated dcu and package will be placed in the correct relative directory. и нигде не могу найти Bold40D7IB.dpk ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2004, 16:50:13 |
|
||
|
FireBird+BLOB+Dynamic Array - не работает
|
|||
|---|---|---|---|
|
#18+
БАлин, домой все ушли что-ли ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2004, 17:06:57 |
|
||
|
FireBird+BLOB+Dynamic Array - не работает
|
|||
|---|---|---|---|
|
#18+
Да не ставь ты этот Болд ! Нахрена он тебе ? И глянь пост от "сегодня, 16:25" :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2004, 17:15:12 |
|
||
|
FireBird+BLOB+Dynamic Array - не работает
|
|||
|---|---|---|---|
|
#18+
Какой модуль нужно подключить к проекту чтобы делфи не ругалась Undeclared identifier: 'TIBBlobStream' ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2004, 17:32:17 |
|
||
|
FireBird+BLOB+Dynamic Array - не работает
|
|||
|---|---|---|---|
|
#18+
IBBlob ! Не забывай про Delphi Help! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2004, 17:35:54 |
|
||
|
FireBird+BLOB+Dynamic Array - не работает
|
|||
|---|---|---|---|
|
#18+
Уже нашёл Но опять неувязочка //------------------- var i, cnt:integer; arrStream:TMemoryStreAm; IBBlob: TIBBlobStream; //------------------- with IBTable do begin Active:=true; insert; IBBlob:= IBTable.CreateBlobStream(IBTable.FieldByName('value'), bmReadWrite); << тут ругается Incompatible types: 'TIBBlobStream' and 'TStream' IBblob.CopyFrom(arrStream, arrStream.Size); post; Active:=false; end; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2004, 17:36:20 |
|
||
|
FireBird+BLOB+Dynamic Array - не работает
|
|||
|---|---|---|---|
|
#18+
To mv Кстати о help У вас нигде не завалялся файл ibx.hlp А то у меня его нет не в установленной Delphi не в Distrib ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2004, 17:40:14 |
|
||
|
FireBird+BLOB+Dynamic Array - не работает
|
|||
|---|---|---|---|
|
#18+
А так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. ???? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2004, 17:43:31 |
|
||
|
FireBird+BLOB+Dynamic Array - не работает
|
|||
|---|---|---|---|
|
#18+
кстате, работает [src delphi]. пользуйтесь плз ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2004, 17:47:10 |
|
||
|
FireBird+BLOB+Dynamic Array - не работает
|
|||
|---|---|---|---|
|
#18+
Мыло проверь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2004, 17:47:36 |
|
||
|
|

start [/forum/topic.php?fid=40&msg=32625771&tid=1578034]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
181ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
72ms |
get tp. blocked users: |
1ms |
| others: | 192ms |
| total: | 489ms |

| 0 / 0 |
