Query across multiple databases on same server中给出的代码示例将适用于我想要做的事情。我唯一的问题是,是否可以在SELECT语句中为检索的记录包含数据库的名称。换句话说,我想知道记录是来自DB1还是DB2。这可能吗?
答案 0 :(得分:2)
此答案基于相关问题(link)中已接受答案的代码。
由于您在创建View时从中提取数据,因此您可以将此信息添加为静态列:
CREATE VIEW vCombinedRecords AS
SELECT 'DB1' as Database, * FROM DB1.dbo.MyTable
UNION ALL
SELECT 'DB2', * FROM DB2.dbo.MyTable
这将标记来自DB1
的每条记录,其值为" DB1"在Database
列
答案 1 :(得分:1)
当然,试试:
CREATE VIEW vCombinedRecords AS
SELECT 'DB1' as Database_Name,* FROM DB1.dbo.MyTable
UNION ALL
SELECT 'DB2',* FROM DB2.dbo.MyTable