您好:
`DECLARE @queryX nvarchar(MAX)='SELECT * from [dbo].[XXX] ';
exec msdb.dbo.sp_send_dbmail
@execute_query_database=@DBNAME,
@profile_name=@profile_nameX,
@recipients=@mailtoX ,
@subject=@subjX,
@query=@queryX,
@body_format='HTML' ,
@attach_query_result_as_file =@attsend,
@query_result_separator =@sp,
@query_attachment_filename = 'a.csv',
@query_result_width=1000, /*版面寬,避免欄位太長不整齊而切第行*/
/*若還是會被切,則於sql設定casr as char()*/
@body=@Z `
DECLARE @queryX nvarchar(MAX)='SELECT * from [dbo].[XXX] ';
可以過,
但用
DECLARE @queryX nvarchar(MAX)='SELECT * from #temp ';
暫存TABLE ,就無法過
這有解嗎?
謝謝
我最後用## 全域 可過
这篇文章真的很有帮助!让我对 OPENROWSET 和其他 T-SQL 功能有了更深入的了解。特别是关于触发器和函数的部分,讲解得非常清楚。这些信息对我的工作有很大的启发,十分感激您分享这样的优质内容。level devil