建立链接服务器EXEC sp_addlinkedserver
'别名',
'',
'MSDASQL',
NULL,
NULL,
'DRIVER={SQL Server};SERVER=远程名;UID=用户;PWD=密码;'
GOinsert into b(col1,col2....)
select col1,col2,col3.... from 别名...table
'别名',
'',
'MSDASQL',
NULL,
NULL,
'DRIVER={SQL Server};SERVER=远程名;UID=用户;PWD=密码;'
GOinsert into b(col1,col2....)
select col1,col2,col3.... from 别名...table
--建立连接服务器
exec sp_addlinkedserver @server = N'netname',--你给这个连接起的别名
@srvproduct = N' ',
@provider = N'SQLOLEDB',
@datasrc = N'10.42.4.54', --另一个服务器的IP地址
@catalog = N'pubs'--你要连接操作的数据库--建立登录,第一个sa处是你本机的用户名,第二个sa是另一个服务器的用户名,最后一个空格处是另一个服务器上的登陆密码
exec sp_addlinkedsrvlogin N'netycjxc', false, N'sa', N'sa', N''
2、进行你的常规操作,要操作另一个数据库的表时,只要如此引用:
[netname].[pubs].dbo.表名,也就是“服务器别名.数据库.角色.表名”就可以了
EXEC sp_addlinkedserver '别名','','MSDASQL',NULL,NULL,'DRIVER={SQL Server};SERVER=远程名;UID=用户;PWD=密码;'
exec sp_addlinkedsrvlogin @rmtsrvname='别名',@useself='false',@locallogin='sa',@rmtuser='sa',@rmtpassword='密码'
GO
然后你就可以如下:
select * from 别名.库名.dbo.表名
insert 库名.dbo.表名 select * from 别名.库名.dbo.表名
select * into 库名.dbo.新表名 from 别名.库名.dbo.表名
go