Сохранение изображения в виде байта [] с использованием import.sql с пружиной - PullRequest
0 голосов
/ 29 апреля 2018

Я пытаюсь добавить файл изображения в базу данных, используя файл import.sql при загрузке spring. Я сейчас использую postgresql.

Мой байтовый массив находится в моем project классе:

 @Lob
 private byte[] bytes;

Я попытался импортировать файл через pg_read_file, например, так:

-- Insert into Project

insert into project (title, colour, description, project_user_id, bytes) values ('Test', '#F6D2B4', 'a short description of some project, making sure its over 50 characters', 1, pg_read_file('classpath:static/images/pon9s2N.jpg'))

но я получаю следующую ошибку при запуске пружины:

2018-04-29 10:33:43.812 ERROR 540 --- [           main] org.hibernate.tool.hbm2ddl.SchemaExport  : HHH000388: Unsuccessful: insert into project (title, colour, description, project_user_id, bytes) values ('Test', '#F6D2B4', 'a short description of some project, making sure its over 50 characters', 1, pg_read_file('classpath:static/images/pon9s2N.jpg'))

2018-04-29 10:33:43.813 ERROR 540 --- [           main] org.hibernate.tool.hbm2ddl.SchemaExport  : ERROR: column "bytes" is of type oid but expression is of type text
Hint: You will need to rewrite or cast the expression.
Position: 179

Я пытался использовать CAST(pg_read... AS byte[]), но не повезло.

Спасибо.

1 Ответ

0 голосов
/ 29 апреля 2018

Используйте pg_read_binary_file для чтения двоичного файла.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...