@anya_hacker

Как вставить байт код в PostgreSQL?

Пишу сервер на Heroku с PostgreSQL.
В таблице хочу хранить изображение, чтобы в дальнейшем его отправлять и сохранять в базе sqlite в телефоне Android (в бд sqlite указала тип blob).
Для фотографии в postgresql указала тип данных bytea.
Но написав запрос вылетает ошибка:
ERROR: invalid input syntax for type bytea
Сам запрос:
insert into table(name, img) values('toy', bytea('C:\Users\anya\Desktop\games\robot.png'))

поле name - тип text, поле img - тип bytea.
Как можно сохранить изображение в байтах? Чтобы можно было его отправлять с сервера на устройство.
  • Вопрос задан
  • 359 просмотров
Решения вопроса 1
sergey-gornostaev
@sergey-gornostaev Куратор тега PostgreSQL
Седой и строгий
Во-первых, байткода в файлах изображений нет. Во-вторых, лучше изображения в базе не хранить, это плохо влияет на производительность. В-третьих, если уж припёрло, стоит использовать соответствующие функции для чтения файла в bytea
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@galaxy
Ответ, вообще говоря, зависит от ЯП/клиента, который вы используете.
Ибо вам нужно сначала считать содержимое файла в переменную, а затем вставить ее в запрос тем или иным способом.
Например, для PHP можно использовать pg_escape_bytea + pg_query_params
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы