将数据库拆分为两个数据库

时间:2013-09-22 10:53:23

标签: database split

我想将我的数据库拆分成两个数据库,快速检查表明我可以轻松地跨数据库查询,加入,更新表。

我现在的主要问题是要做到这一点,我必须做这样的事情。

SELECT * 
  FROM Database1.dbo.Table1, 
       Database2.dbo.Table2

正如您所看到的,我必须明确提到数据库名称,这意味着如果使用不同的名称部署数据库名称,则此代码将不再起作用。

有什么想法可以克服这个问题吗?

1 个答案:

答案 0 :(得分:0)

您可以使用db_name()获取当前数据库名称和动态sql来构建动态查询。 类似的东西:

declare @databaseName nvarchar(max) = db_name()

declare @dynamicSql nvarchar(max) = 'SELECT * FROM '+ @databaseName + '.dbo.Table1'

exec sp_executesql @dynamicSql