2012-04-14 51 views
5

必須有一個簡單的方法才能做到這一點。我有一個連接到數據庫的Powershell腳本,我想將結果數據表保存爲CSV。這是迄今爲止代碼:使用Powershell將數據表保存爲csv

$connString = "Provider=msdaora;Data Source=MyDatabase;User Id=test;Password=test  
$qry = "select * from employees" 
$OLEDBConn = New-Object System.Data.OleDb.OleDbConnection($connString)    
$OLEDBConn.open()    
$readcmd = New-Object system.Data.OleDb.OleDbCommand 
$readcmd.Connection = $OLEDBConn 
$readcmd.CommandTimeout = '300' 
$readcmd.CommandText = $qry 
$da = New-Object system.Data.OleDb.OleDbDataAdapter($readcmd)    
$dt = New-Object system.Data.datatable    
[void]$da.fill($dt)    
$OLEDBConn.close() 
+0

有一個[的ConvertTo-CSV(http://technet.microsoft.com/en-us/library /dd315253.aspx)cmdlet。你只需要確保你輸入一些可以理解的東西。 – 2012-04-14 00:27:33

回答

15

這應該做到這一點,我認爲:

$ds = New-Object System.Data.DataSet 
$da.Fill($ds) >$null| Out-Null 
$ds.Tables[0] | export-csv tofile.csv -notypeinformation 
+0

非常感謝!像魅力一樣工作。我幾乎不知道Powershell,但需要運行這個簡單的數據拉。 – 2012-04-16 17:36:32