如何将来自不同数据库的数据保存到一个数据库(MainDatabase
)中?
我只是想做一个简单的程序,可以从多个具有相同表名(例如transactionTBL
)的数据库中检索数据,然后将其保存到具有相同列和值的一个数据库中。顺便说一句,我确实尝试过使用存储过程-但它必须是对象,而不是varchar或字符串。
@DATABASE varchar(50)
INSERT INTO UserControlTenant.dbo.tenantData (tenant_name, receipt_id, amount, date, time)
SELECT *
FROM ___.dbo.transactiondata
示例:
数据库1
~transactiontbl~
ID
receiptID
amount
date time
数据库2
~transactiontbl~
ID
receiptID
amount
date time
- MainDB
~transactiontbl~
ID
receiptID
amount
date time
答案 0 :(得分:2)
在您的情况下,您需要数据库链接以便能够从另一个数据库访问一个数据库。
INSERT INTO UserControlTenant.dbo.tenantData (tenant_name, receipt_id, amount, date, time)
SELECT * from OPENQUERY(MyLinkedServer,'SELECT * FROM xxx.dbo.transactiondata');
或者如果是mssql DB
INSERT INTO UserControlTenant.dbo.tenantData (tenant_name, receipt_id, amount, date, time)
SELECT * from [SRVR002\ACCTG].dbo.transactiondata');
用于创建数据库链接检查this reference