数据库邮件搞砸了CSV附件

时间:2015-03-18 11:06:20

标签: sql-server dbmail

有没有办法从下面的语句格式化输出CSV,以便Excel可以轻松读取?至于现在它打开所有列混乱到一列。我已经尝试过不同的导师。

EXEC msdb.dbo.sp_send_dbmail
    @profile_name = 'auto-reporting'
  , @recipients = @recipientsList   
  , @subject = 'MC Auto Reports'
  , @query = 'select * from test.dbo.temp'
  , @attach_query_result_as_file = 1
  , @query_result_separator =','
  , @query_result_no_padding = 1
  , @query_attachment_filename = @FileName;

2 个答案:

答案 0 :(得分:1)

尝试在记事本中编辑生成的.csv文件。在第一行输入[sep =,]没有引号并保存。然后尝试在Excel中打开它,如果它正确显示,那么你需要检查windows中的区域设置。

答案 1 :(得分:0)

尝试更改

, @query_result_separator =','

, @query_result_separator = @separator

只需在发送电子邮件之前添加此代码

DECLARE @separator CHAR(1)
SET @separator = CHAR(9)

这使Excel更喜欢的分离器TAB。