2012-04-14 9 views
5

zu speichern Es muss einen einfachen Weg geben, dies zu tun. Ich habe ein Powershell-Skript, das eine Verbindung zu einer Datenbank herstellt, und ich möchte die resultierende Datentabelle als CSV speichern. Hier ist der Code so weit:Powershell verwenden, um eine Datentabelle als 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

Es gibt eine [ConvertTo-Csv] (http://technet.microsoft.com/en-us/library /dd315253.aspx) Cmdlet. Sie müssen nur sicherstellen, dass Sie etwas hineinstecken, das es verstehen kann. –

Antwort

15

dies sollte es tun denke ich:

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

Vielen Dank! Lief wie am Schnürchen. Ich weiß fast nichts über Powershell, aber ich musste diesen einfachen Datenzugriff ausführen. –

Verwandte Themen