我想知道使用linkserver的最佳方法是什么。
我在SQL Server中有一个名为Sales
的数据库和另一个名为Menus
的数据库。两者都在JOSEPH-PC
的同一个实例上。
我的问题:是否有必要使用链接服务器?
或者我可以简单地写一个这样的查询:
select *
from Sales.dbo.table1 a
inner join Menus.dbo.accces b on a.code = b.code
如何将数据存储在来自不同数据库的2个表中,例如来自我在C#中的应用程序的主要细节?
请让我知道如何做到这一点。
答案 0 :(得分:1)
我认为你不能为同一个sql server实例创建链接服务器。必须是不同的实例或不同的服务器。
如果它是关于在同一服务器同一实例中访问不同数据库的最佳方法?同义词就是为了这个目的。
在access
中的Menus
创建sales
的同义词,然后您可以在synonym
数据库上使用sales
本地表格。
在sales
数据库中运行以下命令为访问创建同义词,现在在销售中,您可以使用 menus_access 作为表格,将引用菜单数据库
CREATE SYNONYM menus_access
FOR Menus.dbo.access;
现在在销售中,您可以
访问该表格 select * from menus_access
答案 1 :(得分:0)
您需要在两个数据库之一上创建视图,并确保您的连接字符串指向该数据库。您可以在SQL Server中创建一个连接到Create view across multiple databases
这两个数据库的视图您可能还希望按照您尝试的方式查看how to retreve data from two different database using join in sql server 2005。