跨服务器数据库之间的操作怎么进行啊???

put2001_ruan 2003-12-26 01:50:01
目的:我想在一台服务器上把一个表格中的数据导到另外一个服务器中的一个表中
我是在VB程序中来操作的
http://expert.csdn.net/Expert/FAQ/FAQ_Index.asp?id=284中有类似的文章,但是他没有说出结果来
...全文
61 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
chaozhuang 2003-12-26
  • 打赏
  • 举报
回复
路过,帮你顶
xzx760815 2003-12-26
  • 打赏
  • 举报
回复
EXEC sp_addlinkedserver 'OracleSvr',
'Oracle 7.3',
'MSDAORA',
'ORCLDB'
GO

delete from openquery(mailser,'select * from yulin')

select * from openquery(mailser,'select * from yulin')

update openquery(mailser,'select * from yulin where id=15')set disorder=555,catago=888

insert into openquery(mailser,'select disorder,catago from yulin')values(333,777)
txlicenhe 2003-12-26
  • 打赏
  • 举报
回复


/************* Oracle **************/
EXEC sp_addlinkedserver 'OracleSvr',
'Oracle 7.3',
'MSDAORA',
'ORCLDB'
GO

delete from openquery(mailser,'select * from yulin')

select * from openquery(mailser,'select * from yulin')

update openquery(mailser,'select * from yulin where id=15')set disorder=555,catago=888

insert into openquery(mailser,'select disorder,catago from yulin')values(333,777)
put2001_ruan 2003-12-26
  • 打赏
  • 举报
回复
关键是两个服务器一个是:MS SQL,Oracle.
我的目的是想把Oracle中的一个表格放到MS SQL中.
VB代码:
cnSpeedTest.Open "Provider=SQLOLEDB;User ID=sa;PassWord=put_ruan;Initial Catalog=Northwind;Data Source=RDSVR;Persist Security Info=False;"

rsSpeedTest.Open "select * into TestTable from OPENDATASOURCE('OraOLEDB.Oracle','Data Source=mydb;User ID=system;Password=put_ruan').my_first_table", cnSpeedTest

运行出错!!!
zjcxc 元老 2003-12-26
  • 打赏
  • 举报
回复
--创建链接服务器
exec sp_addlinkedserver 'srv_lnk','','SQLOLEDB','远程服务器名'
exec sp_addlinkedsrvlogin 'srv_lnk','false',null,'sa','密码'
go

--查询示例
select * from srv_lnk.数据库名.dbo.表名

--导入示例
select * into 表 from srv_lnk.数据库名.dbo.表名

go
--处理完成后删除链接服务器
exec sp_dropserver 'srv_lnk','droplogins'
zjcxc 元老 2003-12-26
  • 打赏
  • 举报
回复
insert into openrowset('sqloledb','另一个服务器名';'sa';'',数据库名..表名)
select * from 表名
txlicenhe 2003-12-26
  • 打赏
  • 举报
回复


/********************链接数据库 *******************************/

select * into 本地库名..表名 from OPENDATASOURCE(
'SQLOLEDB',
'Data Source=远程ip;User ID=sa;Password=密码'
).库名.dbo.表名

insert 本地库名..表名 select * from OPENDATASOURCE(
'SQLOLEDB',
'Data Source=远程ip;User ID=sa;Password=密码'
).库名.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

34,575

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧