SQL Server创建dblink跨库查询
在SQL Server中,没有直接的dblink
概念,类似Oracle的数据库链接(dblink)功能。但是,可以通过创建链接服务器(Linked Server)的方式来实现类似的跨数据库查询。以下是创建链接服务器的基本步骤:
- 打开SQL Server Management Studio (SSMS)。
- 连接到你想要创建链接服务器的实例。
- 在“对象资源管理器”中,右键单击“服务器对象” -> “链接服务器” -> “新建链接服务器”。
在“新建链接服务器”对话框中,填写必要的信息来定义链接。
- 在“常规”选项卡中,指定链接服务器的名称。
- 在“安全性”选项卡中,指定登录信息,通常使用SQL Server身份验证或Windows身份验证。
- 在“服务”选项卡中,可以指定用于RPC和RPC out的默认服务。
以下是一个创建链接服务器的示例代码:
EXEC sp_addlinkedserver
@server = 'LINKEDSERVERNAME', -- 链接服务器的名称
@srvproduct = '',
@provider = 'SQLNCLI', -- SQL Server Native Client
@datasrc = 'RemoteServerName'; -- 远程服务器的名称
-- 如果需要指定SQL Server身份验证,还需要执行以下代码
EXEC sp_addlinkedsrvlogin
@rmtsrvname = 'LINKEDSERVERNAME',
@useself = 'FALSE',
@locallogin = NULL,
@rmtuser = 'RemoteLogin', -- 远程服务器的登录名
@rmtpassword = 'RemotePassword'; -- 远程服务器的登录密码
创建链接服务器后,你可以使用四部分名称 @LinkedServerName.DatabaseName.SchemaName.TableName
来进行跨数据库查询。例如:
SELECT *
FROM LINKEDSERVERNAME.RemoteDatabaseName.dbo.RemoteTableName;
请确保你有足够的权限来创建链接服务器,并且远程服务器允许从你的SQL Server实例进行连接。
评论已关闭