Sql-Server

如何更新從 sqlcmd 導出的查詢中的第一行

  • August 27, 2018

我試圖找到一種簡單的方法來將sqlcmd查詢導出中的第一行更新為CT_EVENT,,,,,,,,,,,,,,,,,,,,,,,,. 我在建構 csv 格式的堆棧溢出中發現了這篇文章。我還檢查了Microsoft 文件中的sqlcmd參數。

sqlcmd -S DatabaseServer1 -Q "EXEC [db1].[dbo].[MyStoredProc];" -o output.tmp -s "," -W
type output.tmp | findstr /r /v "^-[-,]*-.$"  > "c:\Temp\import_template.csv"
del output.tmp

編輯:我發現 print 語句適用於此。

PRINT 'CT_EVENT,,,,,,,,,,,,,,,,,,,,,,,,';

截屏

Powershell怎麼樣?它具有豐富的字元串操作功能,並且還具有內置的 CSV 支持。一個快速而骯髒的方式就像這樣,

# Read the file into a variable, skip 1st row
$data = (Get-Content $myFile | Select-Object -Skip 1)
# Write just the header
set-content -path c:\output.csv -value "my,desired,header,column,,,,,"
# Add actual data
add-content -path c:\output.csv -value $data

引用自:https://dba.stackexchange.com/questions/210665