Сохранить в динамическое имя файла CSV с помощью SQL-запроса

#sql-server #tsql #export-to-csv

#sql-сервер #tsql #экспорт в csv

Вопрос:

У меня есть этот код, который мне нужно экспортировать в несколько имен файлов CSV из (Original-Database) и на основе (ID-Database) с помощью кодирования

Может ли кто-нибудь помочь мне с этим, поскольку я не смог найти способ экспорта в CSV, в котором имя файла является переменным

ID-База данных содержит номер строки и связанный идентификатор, и она создана только для количественной оценки цикла while в запросе

Следующий код выбирает таблицы, которые я хочу экспортировать. но мне нужно на самом деле экспортировать его. Однако я не смог найти приемлемого решения этой проблемы.

Спасибо за помощь

 DECLARE @counter INT = 0;
WHILE @counter <= (SELECT max([RowNum]) FROM (ID-Database)) 
BEGIN

Select* 
From  (Original_DataBase)
Where [ID] = (Select [ID] from (ID-Database) where [RowNum]=@counter) 

  SET @counter = @counter   1;
END
  

Результатами должны быть CSV-файлы с разными именами, которые я могу определить с помощью кода SQL

Комментарии:

1. Нелегко экспортировать во внешний файл из кода SQL. его проще извлечь с помощью внешней программы, такой как BCP или Powershell. Кстати, код, который у вас есть, на самом деле не имеет никакого смысла.

2. Я пытаюсь экспортировать большую базу данных в несколько файлов CSV. Каждый CSV-файл будет иметь имя идентификатора. RowNum используется только для количественного определения порядка идентификаторов для цикла While. Я пробовал внешние инструменты на Python, но возникли проблемы с нехваткой памяти, поскольку это огромная база данных. Вот почему я использую этот подход.

3. В вашем примере у вас есть таблица с именем «MyDatabase», и вы зацикливаетесь на экспорте того, что кажется отдельными строками. Вы пытаетесь разделить таблицу на несколько файлов? Вы знаете, что CSV может быть сколь угодно большим, проблема просто в том, чтобы открыть его в Excel, вот в чем. Пожалуйста, объясните, чего вы на самом деле пытаетесь достичь. Почему резервная копия SQL Server не выполняет то, что вам нужно? Для чего используются файлы CSV? Самый простой способ получить данные в виде файлов для использования SQL Server — это использовать BCP.exe собственный формат

4. Из чистого кода SQL вы в принципе не можете экспортировать файлы. Ну, вы, вероятно, можете, но это настолько запутанно, что никогда не было практичным решением

5. Почему вы не подключаетесь напрямую к базе данных и не анализируете с помощью python? Я не буду предлагать никакого решения, пока не пойму, что вы действительно пытаетесь сделать. Что вы на самом деле пытаетесь здесь сделать?