Михаиллл04 січня 2019 р. 10:49
Как в PSQL сохранить изображение
Здравствуйте, как в Здравствуйте, как в можно сохранить изображение?
В
документации
не нашел подходящего типа данных.
Рекомендуємо хостинг TIMEWEB
Стабільний хостинг, на якому розміщується соціальна мережа EVILEG. Для проектів на Django радимо VDS хостинг.Вам це подобається? Поділіться в соціальних мережах!
Останні коментарі
ИМ
Django - Підручник 017. Налаштуйте сторінку входу до Django Добрый вечер Евгений! Я сделал себе авторизацию аналогичную вашей, все работает, кроме возврата к предидущей странице. Редеректит всегда на главную, хотя в логах сервера вижу запросы на правильн…
Игорь Максимов22 листопада 2024 р. 11:51
Evgenii Legotckoi31 жовтня 2024 р. 14:37
Читалка файлів fb3 на Qt Creator Подскажите как это запустить? Я не шарю в программировании и кодинге. Скачал и установаил Qt, но куча ошибок выдается и не запустить. А очень надо fb3 переконвертировать в html
ИМ
Django - Урок 064. Як написати розширення для Python Markdown Приветствую Евгений! У меня вопрос. Можно ли вставлять свои классы в разметку редактора markdown? Допустим имея стандартную разметку: <ul> <li></li> <li></l…
Игорь Максимов05 жовтня 2024 р. 07:51
QML - Урок 016. База даних SQLite та робота з нею в QML Qt Здравствуйте, возникает такая проблема (я новичок): ApplicationWindow неизвестный элемент. (М300) для TextField и Button аналогично. Могу предположить, что из-за более новой верси…
Тепер обговоріть на форумі
Дмитрий03 лютого 2025 р. 06:24
не запускается компьютер!!! Не запускается компьютер (точнее работает блок , но сам монитор вообще жесть)В общем я ничего с интернета не скачивала в последнее время. На компе никаких левых пр…
Нужно запретить перемещение только некоторых итемов, остальные перемещать можно. Вопрос решен. Узнать QModelIndex элемента на который мы перетаскиваем другой элемент, можно с помощью функции indexAt(event->position().toPoint()) представления QTreeViev вызываемой в переопр…
OAuth2.0 через VK, получение email Спасибо большое за помощь и простите за то что отнял время своей невнимательностью.
Evgenii Legotckoi24 червня 2024 р. 15:11
Добрый день!
Тип данных BLOB нужно использовать для хранения изображения в базе данных, но если честно, то это излишняя нагрузка на базу. Лучше складывать изобажения в определённый каталог, а в базе данных хранить только информацию о путях к файлам.
Вот эта статья должна вам помочь разобраться с добавлением изображения в базу данных, если ваш вопрос также косвенно касался Qt. Не смотрите, что там SQLite, уверен, что с PostgreSQL должно работать аналогично.
Но в PSQL нет типа BLOB. Как думаете, подойдет ли bytea (двоичные данные («массив байт»))?
Это он и есть
Если изображений не много то проще хранить в БД. если больше 1000 то лучще хранить ссылки на изображния. Основной критерий бэкап базы данных.
А если их много, но они не очень большие?
На какой объем памяти лучше ориентироваться?
Да это всё равно лишняя нагрузка на приложение, создавать изображение из QByteArray, который был в базе данных, довольно накладная операция, чем просто открыть изображение, по моему мнению.
Чем вызвано ваше желание именно в базу данных поместить изображения?
думал что так будет удобней хранить инфорацию.
также прикинул что объем памяти будет занят тот же, но просто в другом месте.
и подумал что перевод изибражения в QByteArray и обратно займет только несколько милисекунд, что не принципиально.
Ну, теоретически, наверное да, практически, вы можете утратить некоторую информацию. В статье, которую я вам показывал, вы забираете QByteArray из QPixmap, а значит не имеете служеюной информации, там наверняка не вся информация будет содержаться, которая по факту добавляется в изображение. (Я имею ввиду поворот изображения или ещё что-нибудь в этом роде).
Как бы да, хранилище получается другое. Но тем не менее, по-моему, лишняя нагрузка будет. Я смотрю на это с точки зрения создания сайта, вы видимо с точки зрения другого приложения.
Не знаю, попробуйте реализовать с базой данных, а когда будет много изображений, то проверьте на лишь с хранением путей.
Но я в той статье всё равно хранил название файла, то есть поле под имя/путь файла всё равно было, а хранение изображения было дополнительным полем.
Спасибо