将存储过程从一个数据库动态复制到另一个数据库

时间:2016-09-06 16:00:56

标签: sql-server sql-server-2008

我使用过这个sql,但它不能正常工作

SELECT @objname= OBJECT_DEFINITION (OBJECT_ID(N''+@fromDatabase+'..'+@spName))    
print @objname    
SET @objname = REPLACE(@objname,'''','''''')    
SET @objname = 'USE ['+@toDatabase+']; GO  EXEC(''' + @objname + ''')'  
EXEC(@objname)  

此处OBJECT_DEFINITION (OBJECT_ID('myprocedure'))此功能与

相同
SELECT    [definition] FROM    sys.sql_modules WHERE    object_id = OBJECT_ID('MyProcedure')

但我需要像

这样的东西
SELECT    [definition] FROM    **@from_db**.sys.sql_modules WHERE    object_id = OBJECT_ID('MyProcedure')

0 个答案:

没有答案