Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
как IBSQL (IBX 2.4) записывает блобы?
|
|||
|---|---|---|---|
|
#18+
Не удаётся записать в базу блоб при помощи IBSQL. Вот два фрагмента кода: 1. Чтение из базы - проходит на ура: Код: plaintext 1. 2. 3. 4. 5. 6. 2. Запись в базу - вылетает с ошибкой External: SIGSEGV в момент Param...LoadFromFile Код: plaintext 1. 2. 3. 4. 5. Что не так во втором случае? И как это надо сделать правильно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2021, 11:35 |
|
||
|
как IBSQL (IBX 2.4) записывает блобы?
|
|||
|---|---|---|---|
|
#18+
02.07.2021 11:35, tantico2 пишет: > Что не так во втором случае? И как это надо сделать правильно? у TIBSQL метод ParamByName('blob_field') возвращает объект класса TIBXSQLVAR. изначально у TIBXSQLVAR не было проперти AsBlob. но был метод LoadFromFile(const FileName: string). чо там сейчас накрутил бешенный англосакс - х.з. трассируй, смотри. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2021, 11:45 |
|
||
|
как IBSQL (IBX 2.4) записывает блобы?
|
|||
|---|---|---|---|
|
#18+
Что такое IBX 2.4? Это что-то времен Delphi 5? Сейчас в Rio IBX 19.19. Далее, у TIBXSQLVAR свойства AsBlob никогда не было. Есть AsQuad, а LoadFromFile/SaveToFile - это методы самого TIBXSQLVAR. С чем вы работаете - не понятно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2021, 12:08 |
|
||
|
как IBSQL (IBX 2.4) записывает блобы?
|
|||
|---|---|---|---|
|
#18+
Мимопроходящий, Помню, что раньше (в fibplus) так и делал: param ... LoadFromStream или File... А сейчас в IBSQL нет у них такого метода. Если идти по стеку при вызове ParamByName('blob_field').AsBlob то доходишь до Код: plaintext 1. 2. 3. 4. 5. которая выдаёт nil что, в общем-то ожидаемо. Но тогда должен быть способ сделать ему Create. Пробовал через создание MemorySream и BlobField подкопаться, но этот ParamByName('blob_field') ничего не принимает. Может сейчас это как-то по-новому делается? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2021, 12:12 |
|
||
|
как IBSQL (IBX 2.4) записывает блобы?
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_, https://mwasoftware.co.uk/ibx Это самый свежий на сегодня, с поддержкой fb4. У меня lazarus, возможно в delphi другая нумерация ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2021, 12:13 |
|
||
|
как IBSQL (IBX 2.4) записывает блобы?
|
|||
|---|---|---|---|
|
#18+
02.07.2021 12:08, _Vasilisk_ пишет: > Что такое IBX 2.4? это форк от бешенного англосакса. надысь в форуме IB/FB обсуждали патчи к нему. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2021, 12:19 |
|
||
|
как IBSQL (IBX 2.4) записывает блобы?
|
|||
|---|---|---|---|
|
#18+
tantico2Что не так во втором случае? И как это надо сделать правильно? Use TIBBlobStream, Luke. Потом Quad из него присваивай полю. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2021, 12:34 |
|
||
|
как IBSQL (IBX 2.4) записывает блобы?
|
|||
|---|---|---|---|
|
#18+
02.07.2021 12:34, Dimitry Sibiryakov пишет: > Use TIBBlobStream, Luke. Потом Quad из него присваивай полю. нет там поля Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2021, 12:41 |
|
||
|
как IBSQL (IBX 2.4) записывает блобы?
|
|||
|---|---|---|---|
|
#18+
Пофиг, AsQuad есть же?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2021, 12:46 |
|
||
|
как IBSQL (IBX 2.4) записывает блобы?
|
|||
|---|---|---|---|
|
#18+
02.07.2021 12:46, Dimitry Sibiryakov пишет: > > AsQuad есть же?.. в оригинальном IBX есть. а вот то, что там наглосакс накрутил - х.з. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2021, 12:51 |
|
||
|
как IBSQL (IBX 2.4) записывает блобы?
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov Use TIBBlobStream, Luke. Потом Quad из него присваивай полю. Вот на такое Код: plaintext 1. А метода b.AsQuad не существует. Или я неправильно понял идею? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2021, 13:00 |
|
||
|
как IBSQL (IBX 2.4) записывает блобы?
|
|||
|---|---|---|---|
|
#18+
tantico2А метода b.AsQuad не существует. А мозг существует?.. http://docwiki.embarcadero.com/Libraries/Sydney/en/IBX.IBBlob.TIBBlobStream.BlobID Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2021, 13:07 |
|
||
|
как IBSQL (IBX 2.4) записывает блобы?
|
|||
|---|---|---|---|
|
#18+
tantico2, попробуй вместо TIBSQL заюзать TIBQuery. (надеюсь что хоть там этот "творец" не накосячил) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2021, 13:08 |
|
||
|
как IBSQL (IBX 2.4) записывает блобы?
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov tantico2А метода b.AsQuad не существует. http://docwiki.embarcadero.com/Libraries/Sydney/en/IBX.IBBlob.TIBBlobStream.BlobID у него совсем не тот IBX. с вариантом от дебаркадера почти ничего общего. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2021, 13:10 |
|
||
|
как IBSQL (IBX 2.4) записывает блобы?
|
|||
|---|---|---|---|
|
#18+
Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. Есть подозрение, что Close здесь таки лишний ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2021, 13:10 |
|
||
|
как IBSQL (IBX 2.4) записывает блобы?
|
|||
|---|---|---|---|
|
#18+
Мимопроходящийс вариантом от дебаркадера почти ничего общего. Да пофиг, это свойство было ещё в FIBC от Дица. Весь TIBBlobStream, можно сказать, существует исключительно ради него. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2021, 13:37 |
|
||
|
как IBSQL (IBX 2.4) записывает блобы?
|
|||
|---|---|---|---|
|
#18+
Мимопроходящий у него совсем не тот IBX. Надо тот как-то официально обозвать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2021, 14:07 |
|
||
|
как IBSQL (IBX 2.4) записывает блобы?
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_ Есть подозрение, что Close здесь таки лишний Туда даже не доходит. Где-то раньше облом. С BlobID выходит так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. Стейтмент отрабатывает, но в blob_field прилетает мусор: <Error - invalid BLOB ID [SQLState:42000, ISC error code:335544329]> А мозг существует? За советы спасибо, но держи себя в руках, Люк. Не у всех меч такой лазерный как у тебя. попробуй вместо TIBSQL заюзать TIBQuery Да, держу как запасной вариант. Но хочелось с этим разобраться: то ли я отстал от модных трендов, то Томми не доглядел. Тогда напишу ему... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2021, 14:17 |
|
||
|
как IBSQL (IBX 2.4) записывает блобы?
|
|||
|---|---|---|---|
|
#18+
Забодал таки это блоб... Код: 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. Но это, конечно, костыль и вряд ли такова была базовая идея автора фреймворка ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2021, 14:48 |
|
||
|
как IBSQL (IBX 2.4) записывает блобы?
|
|||
|---|---|---|---|
|
#18+
tantico2, Ну и зачем здесь TMemoryStream (который не плохо было бы удалять), если есть TFileStream и CopyFrom? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2021, 15:25 |
|
||
|
как IBSQL (IBX 2.4) записывает блобы?
|
|||
|---|---|---|---|
|
#18+
tantico2Стейтмент отрабатывает, но в blob_field прилетает мусор: Finalize надо вызывать. Это кривое поделие уже содержит в себе TMemoryStream, добавлять второй - перегонять воздух из пустого в порожнее. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2021, 15:43 |
|
||
|
как IBSQL (IBX 2.4) записывает блобы?
|
|||
|---|---|---|---|
|
#18+
Да, все замечания верны и уместны. Просто второпях перебирал много вариантов - лишь бы заработало) Всем спасибо за помощь! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2021, 16:11 |
|
||
|
как IBSQL (IBX 2.4) записывает блобы?
|
|||
|---|---|---|---|
|
#18+
На всякий случай оставлю здесь. Вот, что ответил сам Тони по поводу этой ситуации: The problem is that you are using TIBSQL in the way that you would use TIBDataset. However, TIBSQL is working directly with the underlying Firebird interface and that requires a different approach. The call to ParamByName('blob').AsBlob returns the interface IBlob. The input parameter has not yet been set and so this always returns nil - hence the exception. To set the value of the blob, you have to create a TIBBlobstream, load it from a file and assign the IBlob interface returned by TIBBlobStream to the param e.g. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.07.2021, 15:50 |
|
||
|
как IBSQL (IBX 2.4) записывает блобы?
|
|||
|---|---|---|---|
|
#18+
05.07.2021 15:50, tantico2 пишет: > The problem is that you are using TIBSQL in the way that you would use TIBDataset. Проблема в том, что Тони - самовлюблённый надутый индюк. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.07.2021, 15:55 |
|
||
|
|

start [/forum/topic.php?fid=58&fpage=16&tid=2037196]: |
0ms |
get settings: |
8ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
48ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
54ms |
get tp. blocked users: |
1ms |
| others: | 13ms |
| total: | 150ms |

| 0 / 0 |
