mssql sqlserver 使用指令碼輸出excel檔案的方法分享

Adeal2008發表於2018-06-25

轉自:http://www.maomao365.com/?p=6683


摘要:
下文將分享使用sql指令碼輸出excel的方法
 
此指令碼可以應用於 表或檢視生成excel的方法,
若需使用sql指令碼輸出excel資料,我們可將sql指令碼生成檢視或臨時表,
然後再輸出excel
————————————
輸出excel語法簡介:
exec
master..xp_cmdshell `bcp [資料庫名稱].[架構名].[表名] out [excel存放位置全路徑] -c -q -S”伺服器Ip” -U “sql使用者名稱” -P “sql密碼”`

---例1:
exec 
master..xp_cmdshell `bcp test.dbo.tableName out d:	est.xls -c -q -S"." -U "sa" -P "erp"`
---將資料庫test中tablName輸出值d盤test.xls檔案
---伺服器地址.
---sql賬戶sa
---sql密碼erp
--------------------------------------------
例2: 根據動態檔名輸出excel的方法
declare @name varchar(30) ---動態檔名
set @name =`d:	est123.xlsx`

exec 
(`master..xp_cmdshell ``bcp test.dbo.tableName out `+@name+` -c -q -S"." -U "sa" -P "erp"```) ---拼接操作語句,並採用exec執行

注意事項:

1 使用指令碼輸出的excel ,無表頭
2 可動態檔名和動態sa賬戶密碼生成相關資訊
3 如果輸出sql指令碼的資料至excel,我們需先將sql指令碼生成的資料快取至表中,然後輸出表資料至excel
xp_cmdshell相關許可權需開啟

相關文章