如何在存储过程中使用master db

时间:2016-06-03 16:07:37

标签: sql sql-server sql-server-2014

我正在尝试创建还原db proc。我遇到了一个问题,因为我无法使用命令'use master'。我尝试使用动态SQL,但没有结果: 我的代码:

{{1}}

有解决方法吗?

1 个答案:

答案 0 :(得分:1)

不允许在存储过程(或函数)中间切换数据库上下文(USE someDBName)。此外,您不需要指向主数据库上下文来运行BACKUP / RESTORE,您几乎可以指向任何数据库。要解决您的问题,只需删除数据库切换并将查询窗口指向除要恢复的数据库之外的任何数据库。

编辑:更新为指向任何数据库除了您尝试还原的数据库之外。感谢@DMason的评论。