我想以编程方式将我的存储过程从一个数据库复制到另一个我尝试了很多方法这是不可能的,我尝试使用以下命令
执行(字符串 Sql)
但是有些 sp 是以这种方式执行的,但有些人在附近以正确的语法说...什么是最好的方法...
我正在使用 sql server 2005
任何人都可以帮助我吗
我想以编程方式将我的存储过程从一个数据库复制到另一个我尝试了很多方法这是不可能的,我尝试使用以下命令
执行(字符串 Sql)
但是有些 sp 是以这种方式执行的,但有些人在附近以正确的语法说...什么是最好的方法...
我正在使用 sql server 2005
任何人都可以帮助我吗
这是将 Master 数据库中的所有 sp 复制到目标数据库的代码,您可以通过过滤过程名称的查询来仅复制您喜欢的 sp。
@sql 定义为 nvarchar(max) @Name 是目标数据库
DECLARE c CURSOR FOR
SELECT Definition
FROM [ResiDazeMaster].[sys].[procedures] p
INNER JOIN [ResiDazeMaster].sys.sql_modules m ON p.object_id = m.object_id
OPEN c
FETCH NEXT FROM c INTO @sql
WHILE @@FETCH_STATUS = 0
BEGIN
SET @sql = REPLACE(@sql,'''','''''')
SET @sql = 'USE [' + @Name + ']; EXEC(''' + @sql + ''')'
EXEC(@sql)
FETCH NEXT FROM c INTO @sql
END
CLOSE c
DEALLOCATE c
如果要使用 sql server 工具,请按照 SQL Server - 将存储过程从一个 db 复制到另一个