標籤歸檔:csv

讀取mdf格式的sql server數據文件,並將數據以CSV格式導出

多年以前使用過微軟的SQL Server 2000數據庫。留下一個mdf格式的數據文件,臨時用到想把它導出。過程真可以使用災難來形容。現在不用使用微軟的東西來工作了,真是好運啊。

我使用的是MS SQL Express 2005。要在Windows 7上安裝,得安裝SP4版本。安裝後使用它附加上mdf文件。數據庫就可以在上面查詢了。在查詢窗口輸入:

EXEC xp_cmdshell
'BCP "dbname.dbo.tablename" out d:\aa.csv -t , -T -SMY-PC\SQLEXPRESS -w'

這樣的命令,就能將數據導出CSV到文件。其中-t後面的是分隔符,這裡使用的是逗號,注意這樣如果原來數據中也有逗號,會產生數據分隔出問題,這時可以改用其它符號(如####)。-w是指定使用unicode文字編碼輸出。重點是要加-S參數,指定自己的PC名稱\SQLEXPRESS, 不然會連接出錯,錯誤提示如:

[SQL Native Client]Named Pipes Provider: Could not open a connection
to SQL Server [2].
[SQL Native Client]Login timeout expired
[SQL Native Client]An error has occurred while establishing a
connection to the server. When connecting to SQL Server 2005, this
failure may be caused by the fact that under the default settings SQL
Server does not allow remote connections.

發表在 信息處理 | 標籤為 , , , | 留下評論