|
EOF in string detected при попытке передать в BLOB тело файла полученное ibec_LoadFromFile
|
|||
---|---|---|---|
#18+
Доброе утро! Хотел поинтересоваться удалось ли решить указанную в заголовке поста проблему? На всякий случай уточню что имею ввиду. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
вылетает исключение: SQL Parse Error: EOF in string detected Если делать средствами UDF, то исключения не будет: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
Нужно грузить файлы именно с клиентской машины, поэтому UDF-ка не годится. P.S.: Понятно, что если вместо pdf-ки будет текстовый файл, то такой скрипт сработает, но нужно грузить именно pdf. P.P.S.: Как это сделать в Delphi я знаю. Но хотел сделать через скрипт чтобы иметь более гибкий инструмент, настраиваемый под клиентов без перекомпиляции приложения (в приложении скрипт грузится в приложение и отрабатывается через IBEScript.dll). P.P.P.S.: На всякий случай: сами файлы я в базе не храню. Я её использую для диспетчерезации файлов. База как шлюз перекладывает тела файлов в специальный каталог, защищенный от пользователей правами. И по запросу вытягивает и передает пользователям экземпляры файлов. Таким образом осуществляется отслеживание версий файлов и хранение дополнительной информации (ключи для связи с контекстом и пользовательские индексы содержимого). ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2020, 07:01 |
|
EOF in string detected при попытке передать в BLOB тело файла полученное ibec_LoadFromFile
|
|||
---|---|---|---|
#18+
Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Где XXX - шестнадцатеричное смещение первого байта, который хотим загрузить, YYY - смещение первого байта, который не нужно загружать . Т.е. если у вас файл размером 1000 байт, то должно быть Код: sql 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2020, 14:13 |
|
EOF in string detected при попытке передать в BLOB тело файла полученное ibec_LoadFromFile
|
|||
---|---|---|---|
#18+
_Vasilisk_ YYY - смещение первого байта, который не нужно загружать . ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2020, 14:25 |
|
EOF in string detected при попытке передать в BLOB тело файла полученное ibec_LoadFromFile
|
|||
---|---|---|---|
#18+
nofate2009, А DDL таблицы (T_BLOBS) и версию FB можно узнать. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2020, 15:21 |
|
EOF in string detected при попытке передать в BLOB тело файла полученное ibec_LoadFromFile
|
|||
---|---|---|---|
#18+
AltHasp, Код: sql 1.
FB Server *32 v.2.1.5 18496 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2020, 15:55 |
|
EOF in string detected при попытке передать в BLOB тело файла полученное ibec_LoadFromFile
|
|||
---|---|---|---|
#18+
_Vasilisk_ Код: sql 1. 2. 3. 4. 5.
Я не уверен что такой синтаксис уместен в SQL-диалекте: :h0_3e8 И в диалекте IBEScript что-то не помню чтоб такой был. Либо я не понял что имелось ввиду. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2020, 16:03 |
|
EOF in string detected при попытке передать в BLOB тело файла полученное ibec_LoadFromFile
|
|||
---|---|---|---|
#18+
nofate2009 И в диалекте IBEScript что-то не помню чтоб такой был. Сделайте экспорт таблицы с блобами в SQL скрипт, укажите сохранение в файл и изучайте ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2020, 14:43 |
|
EOF in string detected при попытке передать в BLOB тело файла полученное ibec_LoadFromFile
|
|||
---|---|---|---|
#18+
_Vasilisk_ nofate2009 И в диалекте IBEScript что-то не помню чтоб такой был. Сделайте экспорт таблицы с блобами в SQL скрипт, укажите сохранение в файл и изучайте Изучил. Спасибо!!! Не знал. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.06.2020, 02:01 |
|
EOF in string detected при попытке передать в BLOB тело файла полученное ibec_LoadFromFile
|
|||
---|---|---|---|
#18+
Если кому-то потребуется, вот готовый скрипт IBE-блока, который грузит все файлы из заданного каталога в тестовую таблицу: Код: sql 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. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79.
... |
|||
:
Нравится:
Не нравится:
|
|||
12.06.2020, 02:19 |
|
EOF in string detected при попытке передать в BLOB тело файла полученное ibec_LoadFromFile
|
|||
---|---|---|---|
#18+
nofate2009 Код: sql 1.
nofate2009 Код: sql 1.
Итого Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9.
... |
|||
:
Нравится:
Не нравится:
|
|||
12.06.2020, 12:37 |
|
EOF in string detected при попытке передать в BLOB тело файла полученное ibec_LoadFromFile
|
|||
---|---|---|---|
#18+
_Vasilisk_, спасибо! Поправил: Код: sql 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. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79.
... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2020, 21:59 |
|
EOF in string detected при попытке передать в BLOB тело файла полученное ibec_LoadFromFile
|
|||
---|---|---|---|
#18+
nofate2009 Хотел поинтересоваться удалось ли решить указанную в заголовке поста проблему? На всякий случай уточню что имею ввиду. Проблему решить не удалось, потому что такая проблема мне неизвестна. Сегодня узнал о ней впервые. Будет воспроизводимый пример - будем решать. А теоретически блок в начальном сообщении должен работать без проблем. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.06.2020, 08:24 |
|
EOF in string detected при попытке передать в BLOB тело файла полученное ibec_LoadFromFile
|
|||
---|---|---|---|
#18+
_Vasilisk_ Бред написал. YYY - длина загружаемого блока SET BLOBFILE только в sql-скриптах работает, IBEBlock ничего про нее не знает. И про кодирование смещения/длины блоба в имени параметра - тоже. Так что да, бред :) ... |
|||
:
Нравится:
Не нравится:
|
|||
15.06.2020, 08:48 |
|
EOF in string detected при попытке передать в BLOB тело файла полученное ibec_LoadFromFile
|
|||
---|---|---|---|
#18+
IBExpert, Вы абсолютно правы! Разобрался с причинами ошибки озвученной в названии ветки. Оказалось дело было в другом, а метод ibec_LoadFromFile работает нормально и штатно пишет тело файла в переменную, которая потом успешно передается как параметр INSERT-запроса. Проблема была вот в чём. У меня в целевой таблице было такое поле Код: sql 1. 2. 3.
и когда в скрипте я пытался определить что передавать в качестве переменной число или null таким образом: Код: sql 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.
- ловил эту ошибку: EOF in string detected . лечилось это просто: Код: sql 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.
Прошу прощения что написал тестовый пример (который как-бы, как я полагал должен демонстрировать ошибку без прогона у себя). Был уверен что проблема с символом конца строки в теле читаемого файла, который воспринимается как EOF! <рукалицо> Зато узнал про костыль, как еще можно грузить блобы по HEX-маске)) ... |
|||
:
Нравится:
Не нравится:
|
|||
16.06.2020, 22:21 |
|
EOF in string detected при попытке передать в BLOB тело файла полученное ibec_LoadFromFile
|
|||
---|---|---|---|
#18+
nofate2009 - ловил эту ошибку: EOF in string detected . Это потому, что препарирование твоего INSERT'а дает ошибку, и приходится подставлять значения параметров прямо в текст запроса. Что в случае блоба его - текст запроса - запросто может испортить. Ну и по соседнему твоему топику жду ответа. Есть кое-какие идеи, но я не совсем понял проблему. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2020, 05:19 |
|
EOF in string detected при попытке передать в BLOB тело файла полученное ibec_LoadFromFile
|
|||
---|---|---|---|
#18+
IBExpert, Да, я понял. Большое спасибо!) Я и сам тоже так подумал, когда нашел причину )) P.S.: По другой ветке - отписался там максимально подробно. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.06.2020, 16:17 |
|
|
start [/forum/topic.php?fid=42&tid=1598631]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
41ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
61ms |
get tp. blocked users: |
2ms |
others: | 16ms |
total: | 167ms |
0 / 0 |