将数据从一个数据库动态插入到其他数据库

时间:2015-10-15 15:53:36

标签: sql-server

将数据从一个数据库插入另一个数据库时出现了一个问题

下面是我的代码:

INSERT 
INTO myarchivedb.dbo.tblStoreOrderArchive
(
        [StoreOrderId]
       ,[CompanyId]
       ,[SiteId]
)
SELECT  StoreOrderId
    ,CompanyId
    ,SiteId
FROM mycurrentdb.dbo.tblStoreOrder

以上代码工作正常,但 myarchivedb mycurrentdb 会定期更改。如何使用变量动态地完成它。

1 个答案:

答案 0 :(得分:0)

你可以这样尝试

declare @db1 nvarchar(99) = 'myarchivedb.dbo.tblStoreOrderArchive';
declare @db2 nvarchar(99) = 'mycurrentdb.dbo.tblStoreOrder';

-- make sure your query and syntax is correct 
PRINT ('INSERT INTO ' +  @db1 + 
'([StoreOrderId] ,[CompanyId] ,[SiteId] ) SELECT StoreOrderId ,CompanyId ,SiteId FROM ' +  @db1)

EXEC ('INSERT INTO ' +  @db1 + 
'([StoreOrderId] ,[CompanyId] ,[SiteId] ) SELECT StoreOrderId ,CompanyId ,SiteId FROM ' +  @db1)