Я хочу поместить все данные в наборе результатов в текстовый файл в том же порядке. Есть ли способ получить данные во всех строках одновременно и записать в файл или записать их построчно?
как лучше всего поместить данные набора результатов в текстовый файл?
Ответы (3)
Зачем для этого использовать Java? Многие СУБД предоставляют эту функцию «из коробки».
Пример MySQL:
select
your_first_field,
your_second_field
from
your_favorite_table
into
outfile
'/path/to/favorite/file.csv'
fields terminated by ','
enclosed by '"'
lines terminated by '\n'
ResultSet не такой, как вы думаете. Это просто ссылка на фактический набор результатов в базе данных. Вы не можете преобразовать его в один выстрел. Вам придется повторять его строку за строкой. Всякий раз, когда запускается запрос на выборку, полученный результат сохраняется в кэше базы данных, для которого jdbc выделяет ссылку на набор результатов, чтобы упростить доступ к данным.
Итак, ответ на ваш вопрос: да, вам нужно повторять строку за строкой, и, возможно, вы можете использовать файл CSV для хранения своих значений.
1) Ответ на этот вопрос можно решить следующим образом.
Какой бы набор результатов вы ни получили, выполните итерацию по набору результатов и, когда вы сохраняете данные в переменные, отправьте их в файлы csv через пакет файлового ввода-вывода.
2) если у вас есть база данных, оттуда напрямую экспортируйте данные в файлы csv.