我遇到以下错误:无法初始化错误编号为-2147467259的sqlcmd库 在查询以下运行时,我也尝试提供数据库名称,但一次又一次出现相同错误,这是行不通的。有人可以在这方面帮助我吗?
declare @subject_line varchar (200)
declare @sql_query varchar (8000)
set @subject_line=(select 'Find Highest - ' + convert
(varchar(25),getdate(),120))
set @sql_query=(select 'select a.productname, a.groupid, c.productstatus,
releasedate from #tmpa a
join #tmpb b on a.productname = b.productname and a.prodgroupseqnr = b.maxpg
left join [Repository_PROD].[dbo].[Product_Info] c on a.productname =
c.product_EDP
order by 1')
EXEC msdb.dbo.sp_send_dbmail
@recipients=N'abc@gmail.com',
@subject= @subject_line,
@body= 'Hi ,
Please find attached output of given query .
Regards,
SQLDBA_TEAM
',
@execute_query_database = 'Repository_PROD',
@query_result_header = 1,
@query= @sql_query,
@profile_name ='SQLDBA',
@query_result_width=6000,
@query_result_separator =' ',
@query_no_truncate = 1,
@query_result_no_padding = 1,
@query_attachment_filename ='Find Highest.xls',
@attach_query_result_as_file = 1 ;
答案 0 :(得分:0)
我也面临着同样的问题。然后,我发现未在安全性的SQL Server登录文件夹中添加正在调用作业的用户。我在安全性->登录中添加了该用户。一切正常。
答案 1 :(得分:0)
使用数据库邮件时不能使用临时表。您还需要在正在访问的所有表中包含数据库名称,例如, FROM ' + DB_NAME() + '.dbo.TableName 使其可跨数据库移植。