0

我编写了一个 T-SQL 脚本,将一些数据从一个数据库迁移到另一个数据库。目前我正在通过使用动态 sql 来做到这一点。

例如看下面的代码:

Declare @sqlquery nvarchar(4000)
SET @sqlquery = N'SELECT * from ' + @LinkServerName + @SourceDatabaseName + '.dbo.Table'
EXEC @sqlquery

在此示例@LinkServerName中是一个nvarchar变量,用于存储包含源数据库的 SQL Server 的链接服务器的名称。@SourceDatabaseNamenvarchar存储源数据库名称的变量。

我不喜欢那样。我更喜欢以下代码:

SELECT * from @SourceDatabase.dbo.Table

那可能吗?

先感谢您。

4

1 回答 1

1

第二种方法是不正确的,第一种是正确的。有关更多信息,请在 stackoverflow how-to-use-variable-for-database-name-in-t-sql 中查看其他问题

于 2012-08-02T08:03:07.523 回答