CSV Import: Кто-нибудь знает какие-либо хорошие инструменты импорта CSV?

У меня есть несколько CSV, которые нужно импортировать в мои таблицы C# в SQL Server. Я сделал это раньше, но нашел это довольно скучным и утомительным.

Кто-нибудь знает какие-либо инструменты или методы для ускорения этого процесса?

Спасибо всем!

0

6 ответы

Если вам нужно сделать это через C#, то посмотрите FileHelpers или http://www.codeproject.com/KB/cs/CsvReaderAndWriter.aspx .

Если вы хотите сделать это через SQL (BULK INSERT), то посмотрите прохождение (включая источник) здесь http://blog.sqlauthority.com/2008/02/06/sql-server-import-csv-file-in-sql-server-using-bulk-insert-load-comma-delimited-file-in-sql-server/ (ссылка MSDN http://msdn.microsoft.com/en-us/library/ms188365.aspx ).

Существует более простой вариант, однако, используя мастер импорта SQL Server в интерактивном режиме для небольшое количество файлов.

2
добавлено

SQL Server Management Studio, on the database under Right Click -> Tasks -> Import Data... can consume CSV files.

Если вам нужно сделать это через C#, есть множество читателей и писателей CSV:

http://www.codeproject.com/KB/cs/CsvReaderAndWriter.aspx

Отсюда всего лишь короткий переход к DataTable и SqlBulkCopy .

1
добавлено

Предполагая, что csv структурирован таким образом:

  • Одна строка - одна запись
  • Разделенный символ для разделения полей находится в первой позиции каждой строки.

Я бы сделал так:

var lines = File.ReadAllLines("");

foreach (string line in lines)
{
    var values = line.Split(new[] { line[0] }, StringSplitOptions.None);
}
0
добавлено
это действительно не добавляет записи в db.
добавлено автор Daren Thomas, источник
@ DarenThomas, вы правы, я этого не читал.
добавлено автор Fischermaen, источник

FileHelpers библиотека фантастична для того, чтобы делать подобные вещи через код.

0
добавлено

Службы интеграции SQL Server (SSIS) являются инструментами Microsoft ETL и легко обрабатывают файлы CSV.

0
добавлено
Microsoft Stack Jobs
Microsoft Stack Jobs
1 788 участник(ов)

Work & freelance only Microsoft Stack. Feed https://t.me/Microsoftstackjobsfeed Чат про F#: @Fsharp_chat Чат про C#: @CSharpChat Чат про Xamarin: @xamarin_russia Чат общения:@dotnettalks

SqlCom.ru - Стиль жизни SQL
SqlCom.ru - Стиль жизни SQL
908 участник(ов)

Правила чата - https://t.me/sqlcom/88269 @sqlcom - основной канал (только MS SQL) @sql_ninja - второй канал (SQL вопросы начального уровня и свободное общение) @Gopnegbot - Викторина по SQL Server (наберите в привате /quiz). Предложения в @sql_ninja

Microsoft Developer Community Chat
Microsoft Developer Community Chat
584 участник(ов)

Чат для разработчиков и системных администраторов Microsoft Developer Community. __________ Новостной канал: @msdevru __________ Баним за: оскорбления, мат, рекламу, флуд, флейм, спам, NSFW контент, а также большое количество оффтоп тем. @banofbot

SQL_Ninja
SQL_Ninja
340 участник(ов)

Правила чата - https://t.me/sqlcom/88269 @sqlcom - основной канал (только SQL) @sql_ninja - второй канал (SQL вопросы начального уровня и свободное общение) @Gopnegbot - Викторина по SQL Server (наберите в привате /quiz)