使用Powershell将数据表保存为CSV格式

12

这应该有一个简单的方法。我有一个连接到数据库的 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()

有一个ConvertTo-Csv命令。你只需要确保将它能够理解的内容传递给它即可。 - Dmytro Shevchenko
1个回答

30

我想这应该可以解决:

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

非常感谢!运行得很好。我对Powershell几乎一无所知,但需要让这个简单的数据提取运行。 - Matthew Crews
等一下。为什么 $ds.Tables[0] | export-csv tofile.csv -notypeinformationexport-csv tofile.csv -inputobject $ds.Tables[0] -notypeinformation 不同? - duct_tape_coder

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接