我正在使用以下POWERSHELL腳本將SQL表的內容導出到.csv。它運行良好,不幸的是它失敗了,因爲有問題的桌面現在已經添加了一些NULLS。使用POWERSHELL從SQL導出,其中輸出包含NULLS
有沒有辦法修改這個以允許它通過NULLS,還是最好修改底層表。
$server = "sqlmtest"
$database = "mi_lookups"
$query = "SELECT * FROM [dbo].[SQLMtest-BIS-BUS-BPS_system_agent_lookup]"
$extractFile = @"
G:\system_Lookup_Tables\system_agent_lookup.csv
"@
$connectionTemplate = "Data Source={0};Integrated Security=SSPI;Initial Catalog={1};"
$connectionString = [string]::Format($connectionTemplate, $server, $database)
$connection = New-Object System.Data.SqlClient.SqlConnection
$connection.ConnectionString = $connectionString
$command = New-Object System.Data.SqlClient.SqlCommand
$command.CommandText = $query
$command.Connection = $connection
$SqlAdapter = New-Object System.Data.SqlClient.SqlDataAdapter
$SqlAdapter.SelectCommand = $command
$DataSet = New-Object System.Data.DataSet
$SqlAdapter.Fill($DataSet)
$connection.Close()
$DataSet.Tables[0] | Export-Csv $extractFile
謝謝。
根本不需要修改表本身。修改您的'select'語句,使NULL不會返回,或者您的'Export-Csv'管道使NULL不會導致問題 – paul 2015-03-02 11:07:04
只是一種解決方法,但是不能通過給列名稱並使用ISNULL來擴展查詢根據數據類型,[column1],'')還是ISNULL([column1],0)? – Rubik 2015-03-02 11:08:49
不幸的是,該表包含NULLS存在的行,但我仍然需要導出它們。 @paul - 關於如何編輯Export-csv來處理NULLS的任何建議? – chris1982 2015-03-02 11:45:06