1

我有一个很长的 SQL 脚本,我想在一台服务器上为我的每个数据库运行。最好的方法是什么?

我在研究中发现了这一点:

EXEC    sp_msforeachdb  "
IF      '?'     IN ('lib1','lib2','lib3')   

BEGIN
        use ?;
        exec 'my_sp_long_sql_script'
END
"

我试过了,但它需要我在每个库中创建 sp,这违背了循环的目的。或者我如何自动为每个库创建一个 sp?

我要做的就是为我的每个数据库运行我的 long_sql_script。

4

1 回答 1

1

使用存储过程的完全限定名称而不是其相对名称,从定义它的任何位置检索它。这就是 SQL Server 本身的工作方式。

于 2013-03-13T16:24:32.883 回答