2012-04-14 22 views
5

Bunu yapmanın kolay bir yolu olmalı. Bir veritabanına bağlanan bir Powershell betiğim var ve sonuçta elde edilen verileri bir CSV olarak kaydetmek istiyorum.Bir veri tabanını csv olarak kaydetmek için Powershell'i kullanın

$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

bir [ConvertTo-CSV] Orada (http://technet.microsoft.com/en-us/library Burada şimdiye kadar kodudur /dd315253.aspx) cmdlet. Anlayabileceğin birşeyin içine girdiğinden emin olmalısın. –

cevap

15

bu bence bunu yapmalıyım:

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

Çok teşekkür ederim! Bir çekicilik gibi çalıştı. Powershell ile ilgili hiçbir şey bilmiyorum ama bu basit veri çekme işlemini gerçekleştirmek için gerekliydi. –

İlgili konular