2013-05-06 132 views
1

我試圖從數據庫中獲取數據並將其導出到.csv文件格式,這與ETL process類似。但我想在C#中這樣做。從數據庫獲取數據並將其導出到.csv文件

  1. SQL查詢從數據庫中提取數據。
  2. 格式的數據到指定文件規範。
  3. 將其轉爲.csv文件。

我知道第一步很容易做到,我正在努力尋找第二步和第三步的方法。

+1

還有一個堆棧上的美麗類,它可以支持通用列表 [http://stackoverflow.com/questions/2422212/simple-c-sharp-csv-excel-export-class] http:// stackoverflow .COM /問題/ 2422212 /簡單-C鋒利的CSV Excel的出口類 – sstassin 2013-05-06 14:02:43

回答

4

因爲你沒有說明,但寫作的CSV文件是很容易的,我不能在文件規範意見。與XML等不同,格式非常簡單,您可以使用WriteLine直接寫入StreamWriter。您只需輸出包含以逗號分隔的列名的第一行,然後從SQL Query返回的每一行按相同的順序寫入列值,並用逗號分隔。唯一真正的陷阱就是逃跑,例如通過用引號包圍每個值並轉義值中的任何引號來處理逗號,引號等。下面

的例子就是這樣做的一個數據表:

http://dotnetguts.blogspot.co.nz/2007/01/exporting-datatable-to-csv-file-format.html

+0

感謝大衛,我會嘗試這個方法。 – Praveen 2013-05-06 14:30:47

0

我想出了一個簡單而有效的方式做到這一點:

1.SQL查詢從數據庫中提取數據。
2.將數據格式化爲指定的文件規範。

對於第2步,我已經使用了Dapper.NET,這 照顧數據庫部分以及格式。 小巧玲瓏幫助轉換SQL結果到LIST由我完成的文件規範

3.Convert它.csv文件。

爲了將SQL結果轉換爲CSV文件,我使用了比預期更簡單的FileHelpers Library

希望它會幫助別人。

相關問題