三、设置链接服务器以访问格式化文本文件
用于 Jet 的 Microsoft OLE DB 提供程序可用于访问并查询文本文件。
若要直接创建访问文本文件的链接服务器而不将文件链接为 Access .mdb 文件中的表,请执行 sp_addlinkedserver,如下例所示。
提供程序是 Microsoft.Jet.OLEDB.4.0,提供程序字符串为"Text"。数据源是包含文本文件的目录的完整路径名称。schema.ini 文件(描述文本文件的结构)必须与此文本文件存在于相同的目录中。有关创建 schema.ini 文件的更多信息,请参见 Jet 数据库引擎文档。
--Create a linked server.
EXEC sp_addlinkedserver txtsrv, ''Jet 4.0'',
''Microsoft.Jet.OLEDB.4.0'',
''c:\data\distqry'',
NULL,
''Text''
GO
--Set up login mappings.
EXEC sp_addlinkedsrvlogin txtsrv, FALSE, NULL, Admin, NULL
GO
--List the tables in the linked server.
EXEC sp_tables_ex txtsrv
GO
--Query one of the tables: file1#txt
--using a 4-part name.
SELECT *
FROM txtsrv...[file1#txt]
四、链接SQL Server服务器:
1、使用 ODBC 的 Microsoft OLE DB 提供程序
EXEC sp_addlinkedserver ''别名'','''',''MSDASQL'',NULL,NULL,''DRIVER={SQL
Server};SERVER=远程名;UID=用户;PWD=密码;''
如果加上参数@catalog,可以指定数据库
exec sp_addlinkedsrvlogin @rmtsrvname=''别名
'',@useself=''false'',@locallogin=''sa'',@rmtuser=''sa'',@rmtpassword=''密码''
2、使用SQL Server 的 Microsoft OLE DB 提供程序
exec sp_addlinkedserver @server=''别名
'',@provider=''sqloledb'',@srvproduct='''',@datasrc=''远程服务器名''
exec sp_addlinkedsrvlogin
@rmtsrvname=''wzb'',@useself=''false'',@locallogin=''sa'',@rmtuser=''sa'',@rmtp
assword=''密码''
然后你就可以如下:
select * from 别名.库名.dbo.表名
insert 库名.dbo.表名 select * from 别名.库名.dbo.表名
select * into 库名.dbo.新表名 from 别名.库名.dbo.表名
go
例1、
此示例在 SQL Server 的实例上创建一台名为 S1_instance1 的链接服务器,
该服务器使用 SQL Server 的 Microsoft OLE DB 提供程序。
EXEC sp_addlinkedserver @server=''S1_instance1'', @srvproduct='''',
@provider=''SQLOLEDB'',
@datasrc=''S1\instance1''
例2、
--建立链接服务器
EXEC sp_addlinkedserver ''xiaoming'','''',''MSDASQL'',NULL,NULL,''DRIVER={SQL
Server};SERVER=192.168.0.1;UID=sa;PWD=123;''
--建立链接服务器登录映射
exec sp_addlinkedsrvlogin
@rmtsrvname=''xiaoming'',@useself=''false'',@locallogin=''sa'',@rmtuser=''sa'',
@rmtpassword=''123''
go
--查询数据
select * from xiaoming.schooladmin.dbo.agent
--删除链接服务器登录映射和链接服务器:
exec sp_droplinkedsrvlogin ''xiaoming'' ,''sa''
exec sp_dropserver ''xiaoming''
注意事项:
SET IDENTITY_INSERT [ database.[ owner.] ] { table } { ON | OFF }
所以不能通过连接服务器设置此属性
into 也存在这样的问题
select * into xiaoming.northwind.dbo.tt from
xiaoming.northwind.dbo.tt
SQL Server的链接服务器技术小结
0
相关文章