|
链接服务器: 产品名称: 数据源: 提供程序字符串: 还有安全性中的安全上下文该填些什么? |
|
|
|
sp_addlinkedserver
创建一个链接的服务器,使其允许对分布式的、针对 OLE DB 数据源的异类查询进行访问。在使用 sp_addlinkedserver 创建链接的服务器之后,此服务器就可以执行分布式查询。如果链接服务器定义为 Microsoft® SQL Server™,则可执行远程存储过程。 语法 sp_addlinkedserver [ @server = ] 'server' [ , [ @srvproduct = ] 'product_name' ] [ , [ @provider = ] 'provider_name' ] [ , [ @datasrc = ] 'data_source' ] [ , [ @location = ] 'location' ] [ , [ @provstr = ] 'provider_string' ] [ , [ @catalog = ] 'catalog' ] 参数 [ @server = ] 'server' 要创建的链接服务器的本地名称,server 的数据类型为 sysname,没有默认设置。 如果有多个 SQL Server 实例,server 可以为 servername\instancename。此链接的服务器可能会被引用为下面示例的数据源: SELECT * FROM [servername\instancename].pubs.dbo.authors 如果未指定 data_source,则服务器为该实例的实际名称。 [ @srvproduct = ] 'product_name' 要添加为链接服务器的 OLE DB 数据源的产品名称。product_name 的数据类型为 nvarchar(128),默认设置为 NULL。如果是 SQL Server,则不需要指定 provider_name、data_source、location、provider_string 以及目录。 [ @provider = ] 'provider_name' 与此数据源相对应的 OLE DB 提供程序的唯一程序标识符 (PROGID)。provider_name 对于安装在当前计算机上指定的 OLE DB 提供程序必须是唯一的。provider_name 的数据类型为nvarchar(128),默认设置为 NULL。OLE DB 提供程序应该用给定的 PROGID 在注册表中注册。 [ @datasrc = ] 'data_source' 由 OLE DB 提供程序解释的数据源名称。data_source 的数据类型为 nvarchar(4000),默认设置为 NULL。data_source 被当作 DBPROP_INIT_DATASOURCE 属性传递以便初始化 OLE DB 提供程序。 当链接的服务器针对于 SQL Server OLE DB 提供程序创建时,可以按照 servername\instancename 的形式指定 data_source,它可以用来连接到运行于特定计算机上的 SQL Server 的特定实例上。servername 是运行 SQL Server 的计算机名称,instancename 是用户将被连接到的特定 SQL Server 实例的名称。 [ @location = ] 'location' OLE DB 提供程序所解释的数据库的位置。location 的数据类型为 nvarchar(4000),默认设置为 NULL。location 作为 DBPROP_INIT_LOCATION 属性传递以便初始化 OLE DB 提供程序。 [ @provstr = ] 'provider_string' OLE DB 提供程序特定的连接字符串,它可标识唯一的数据源。provider_string 的数据类型为 nvarchar(4000),默认设置为 NULL。Provstr 作为 DBPROP_INIT_PROVIDERSTRING 属性传递以便初始化 OLE DB 提供程序。 当针对 Server OLE DB 提供程序提供了链接服务器后,可将 SERVER 关键字用作 SERVER=servername\instancename 来指定实例,以指定特定的 SQL Server 实例。servername 是 SQL Server 在其上运行的计算机名称,instancename 是用户连接到的特定的 SQL Server 实例名称。 [ @catalog = ] 'catalog' 建立 OLE DB 提供程序的连接时所使用的目录。catalog 的数据类型为sysname,默认设置为 NULL。catalog 作为 DBPROP_INIT_CATALOG 属性传递以便初始化 OLE DB 提供程序。 返回代码值 0(成功)或 1(失败) 结果集 如果没有指定参数,则 sp_addlinkedserver 返回此消息: Procedure 'sp_addlinkedserver' expects parameter '@server', which was not supplied. 使用适当 OLE DB 提供程序和参数的 sp_addlinkedserver 返回此消息: Server added. 注释 下表显示为可通过 OLE DB 访问的数据源设置链接服务器的方法。对于给定的数据源,可以使用多种方法为其设置链接服务器,下表中可能有不止一行适用于一种数据源类型。下表也显示了用于设置链接服务器的 sp_addlinkedserver 参数值。 远程 OLE DB 数据源 OLE DB 提供程序 product_name provider_name data_source location provider_string catalog SQL Server 用于 SQL Server 的 Microsoft OLE DB 提供程序 SQL Server (1)(默认值) - - - - - SQL Server 用于 SQL Server 的 Microsoft OLE DB 提供程序 SQL Server SQLOLEDB SQL Server 的网络名称(用于默认实例) - - 数据库名称(可选) SQL Server 用于 SQL Server 的 Microsoft OLE DB 提供程序 - SQLOLEDB 服务器名\实例名(对于特定实例) - - 数据库名称(可选) Oracle 用于 Oracle 的 Microsoft OLE DB 提供程序 任何 (2) MSDAORA 用于 Oracle 数据库的 SQL*Net 别名 - - - Access/ Jet 用于 Jet 的 Microsoft OLE DB 提供程序 任何 Microsoft.Jet.OLEDB.4.0 Jet 数据库文件的完整路径名 - - - ODBC 数据源 用于 ODBC 的 Microsoft OLE DB 提供程序 任何 MSDASQL ODBC 数据源的系统 DSN - - - ODBC 数据源 用于 ODBC 的 Microsoft OLE DB 提供程序 任何 MSDASQL - - ODBC 连接字符串 - 文件系统 用于索引服务的 Microsoft OLE DB 提供程序 任何 MSIDXS 索引服务目录名称 - - - Microsoft Excel 电子表格 用于 Jet 的 Microsoft OLE DB 提供程序 任何 Microsoft.Jet.OLEDB.4.0 Excel 文件的完整路径名 - Excel 5.0 - IBM DB2 数据库 用于 DB2 的Microsoft OLE DB 提供程序 任何 DB2OLEDB - - 请参见用于 DB2 文档的 Microsoft OLE DB 提供程序 DB2 数据库的目录名 (1 ) 这种设置链接服务器的方式强制链接服务器的名称与远程 SQL Server 的网络名称相同。使用 server 指定服务器。 (2 ) "任何"指产品名称可以任意。 data_source、location、provider_string 和 catalog 参数标识链接服务器指向的数据库。如果任一参数为 NULL 值,则不设置相应的 OLE DB 初始化属性。 说明 若要在 SQL Server 6.x 版上使用 SQL Server 2000 版的 Microsoft OLE DB 提供程序,请在 6.x 版 SQL Server 上运行 \Microsoft SQL Server\Install\Instcat.sql 脚本。此脚本对于在 SQL Server 6.x 服务器上运行分布式查询是基本的。 在群集环境中,当指定指向 OLE DB 数据源的文件名时,应使用通用命名规则 (UNC) 名称或共享驱动器指定位置。 权限 执行许可权限默认授予 sysadmin 和 setupadmin 固定服务器角色的成员。 |
|
|
更多的(包括示例)参考SQL联机帮助 sp_addlinkedserver 部分.
|
|
|
直接在安全性里也可以直接建立
产品名称就是你的连接服务器的名称 直接到安全性里将登陆用户和登陆密码填写确认 |
|
|
这么复杂,假如就是我傍边的一台电脑名字叫 ComputerA 数据库是Oracle类型 数据库名称是OraA 用户名称是UID=system PWD=manager 该怎么设置上面的那几项啊,
|
|
|
哈哈,自认悟性还可以,基本搞定
结贴 |
|
|
帮助很清楚啊,如果不是很清楚,看看帮助。mssql不怎么样,但是帮助写的很好
|
|
|
我的服务器名称是MYWLSERVER为什么查询时出现下面错误啊,请指点
SELECT * FROM [MYWLSERVER].PUBS.dbo.warehouse OLE DB 提供程序 'MYWLSERVER' 不包含表 '"PUBS"."dbo"."warehouse"'。该表可能不存在,或当前用户没有使用该表的权限。 我用的是sa登陆的 |
|