xml файлы из бд на пк, при этом что бы они хранились по папкам?)
Хотя бы команды накидайте плиз)
Тебе в pgsql группу
Напишите программу. 🤣️️️️️️
google -> download files from postgresql
Не гуглится пока что, то что мне нужно хд
Попробуйте ChatGPT, может он поймет что вм нужно? 🙂
Это было бы отличное решение, но заказчик хочет скрипт sql 🤦🏼♀️
https://wiki.dieg.info/kak_v_postgresql_soxranit_dannye_v_formate_csv в чём проблема?
Ну пусть сам и напишет. 🙂 PS. В postgresql можно писать хранимаю процедуры, например на Java для общего равзития https://habr.com/ru/companies/redsoft/articles/699732/
зачем? у него свой язык достаточно мощный
Ну, почему бы и нет. Мы тут вроде бы на канале про джаву. 🤣️️
ну как бы, в джаву мы должны отдать уже по возможности обработанные данные из БД. Всё что можно сделать средствами БД, лучше делать в БД.
Вопрос философский и я тут с вами не согласен. По большому счету современный СУРБД могут делать ВСЁ. Исходя из этого подхода я видел таких монстров, в основном правда на Oracle, что страншно было очень.
задача не ясна, если сделать дамп то так https://stackoverflow.com/questions/50276474/dump-postgresql-table-to-xml-file
oracle - это вещь )))
Oracle это - Чудище обло, озорно, огромно, стозевно и лаяй
но в крупных проектах альтернатива то какая? Где такие же средства администрирования и репликации ещё найдёшь?
Дамп как я читала всей таблицы вроде делается Вообщем, у меня программа через почту принимает письма содержащие xml файлы, после чего загружает их в бд Вот щас стоит задача через скрипт выгрузить все данные, которые там накопились
ну так скинул же, как csv выгрузить...
У вас в бд хранятся именно файлы?
Для крупных проектов сейчас можно использовать хоть kafka использовать для хранения (хотя это и извращение).
это совсем другой инструмент же... именно реляционные БД надо...
Поэтому пишите программу, которая бы читала данные из БД и раскидывала их по папкам. В рамках postgreSQL вам придется мучиться с хранимыми процедурами, что то же самое что и написать программу.
В современных крупных проектах нужно персистентное хранилище, а реляционное оно или не реялционное, это уже вкусовщина. 🤣️️
Csv я тож находила, а вот xml
Да)
csv - это выходной файл, Вы же пишете, что вам выгрузить надо...
Насколько я знаб в PostgreSQL нельзя хранить файлы. В MS SQL можно, в Oracle вроде бы тоже можно…
Выгрузить большое количество ранее загруженных xml файлов Выгрузить в формате xml и с теми же именами, которые были у них при загрузке)
А вот насчет названия файлов могут быть проблемы, если загрузчик эти данные нигде не сохраняет. 🙂 Структуры таблицы покажите, если не секрет.
Названия сохранены)
а зачем тогда БД? Прямой конвектор нельзя?
У меня есть подозрение, что файлы хранятся не в PostgreSQL, а вообще во внешнем хранилище (file_name_in_storage). А в БД храниться «развернутая» по таблицам xml-ка. Т.е. в начале нужно «собрать» xml из таблиц, а потом её сохранить.
https://manpages.debian.org/jessie/xml2/2xml.1 можно конвектор вызвать по пути
Спасибо за наводку, файлы хранятся действительно в другой бд, но тоже в postgre, закодированные в байтах)
понятно что есть 1001 способ это сделать - но как пишущий в основном на жаве я использовал для подобного спринг батч - фреймворк внутри спринга для потоковой обработки данных. собственно в вашем случае нужно реализовать ридер (сконфигурировать готовый JdbcCursorItemReader передав в него запрос к БД и датасоурс), процессор (который будет прочитанные данные превращать в нужный файл, 3 строчки кода) и врайтер (просто сохранение файла), 2 строчки кода. И сконфигурировать джобу из 1 степа состоящего из ридера-процессора=врайтера.
Обсуждают сегодня