我需要一个Carers
在同一台服务器上调用的实时数据库的副本以进行测试。测试数据库名称将为Carers_Test
.
我使用 SSMS 备份了 Carers。并尝试使用 GUI 恢复它。当我按照这些步骤操作时,我唯一改变的是数据库的名称。
但恢复失败并出现错误:
无法获得独占访问权限,因为数据库正在使用中。
我不想对当前的实时数据库做任何事情,为什么数据库正在使用中?我尝试在本地主机上恢复相同的备份,并且成功恢复。当我尝试使用实时数据库在同一台服务器上恢复它时,我收到此错误。
请有人帮助我...我快疯了!
我想创建一个 SQL 作业并发送包含多个选择语句的电子邮件,包括查询结果。是否可以使用 SQL Job 或者我应该使用 SSIS?
编辑1:
EXEC msdb.dbo.sp_send_dbmail
@profile_name = 'Adventure Works Administrator',
@recipients = '****@abc.com',
@Execute_query_database = 'AdventureWorks',
@query = 'SELECT COUNT(*) FROM AdventureWorks.Production.WorkOrder
WHERE DueDate > '2018-03-30'
AND DATEDIFF(dd, '2004-04-30', DueDate) < 2
SELECT * FROM NorthWind.Production.Work
WHERE DueDate > '2018-04-30'
' ,
@subject = 'Work Order Count',
@attach_query_result_as_file = 1 ;
Run Code Online (Sandbox Code Playgroud)
错误消息:文件附件或查询结果大小超过了 1000000 字节的允许值。
编辑 2:我觉得 SQL 代理作业没有指向所需的数据库,并且 sp_send_email 没有数据库名称。所以我添加了@Execute_query_database = 'AdventureWorks'
但仍然没有改进,因为在 SQL SELECTS 中使用了两个不同的数据库。
有什么想法吗?