将架构移动到另一个数据库

时间:2013-07-24 19:20:50

标签: sql-server

我必须将模式从一个数据库移动到新数据库,以将集中模式保存到同一服务器中。问题是我已经有很多存储过程使用了我需要移动的模式中的一些表。

是否有任何解决方法可以执行此操作并更改使用此表的所有对象以便能够指向新数据库?我可以使用同义词或链接服务器吗?

我正在研究SQL Server 2008 R2 谢谢。

1 个答案:

答案 0 :(得分:0)

是的;同义词是要走的路(从http://msdn.microsoft.com/en-us/library/ms177544.aspx偷走了这个例子):

USE tempdb;
GO
-- Create a synonym for the Product table in AdventureWorks2012.
CREATE SYNONYM MyProduct
FOR AdventureWorks2012.Production.Product;
GO

-- Query the Product table by using the synonym.
USE tempdb;
GO
SELECT ProductID, Name 
FROM MyProduct
WHERE ProductID < 5;
GO

您可以通过搜索sys.tables视图并识别属于您要移动的架构的表来轻松生成同义词语句。