更新远程数据库的问题。急!!!

lswc 2003-04-03 09:38:09
用触发器调用存储过程实现。
触发器我写好,但是存储过程不能更新远程服务器
我是用以下语进行更新
select * into 别名.库名.dbo.表名 from 库名.dbo.表名
但提示说 别名.库名.dbo.表名 出错。
还有就是如何编写oracle下的相似功能的存储过程.
复制的方法,我用不上。因为我不能对服务器进行操作,只能通过程度实现。
本人学习数据库时间不长,希望最好能有例子可看。
知道有朋友帮个忙,我急着交程序。
...全文
63 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
lswc 2003-04-03
  • 打赏
  • 举报
回复
qffhq(我心依旧81370026)
我看过了,服务器的链接我这里没问题。
他是从将远程的数据更新到本地服务器。
我要是的将本地的数据更新到远程服务器。
我不知这样有什么不同,因为
exec sp_addlinkserver 远程服务器别名,....
select * into 库名.dbo.表名 from 远程服务器别名.库名.dbo.表名
这是对的。我不知
select * into 远程服务器别名.库名.dbo.表名 from 库名.dbo.表名
是否是正确的。如果不行。还有什么别的语句可以吗?我是情况是远程服务中只有库名,
在不存在表名的情况下建表再复制数据过来。
我如果将存储过程放到远程服务器。我就得用触发器去调用远程的,我还不知道调用的方法
有什么不同?我才学,第一次写存储过程

qffhq 2003-04-03
  • 打赏
  • 举报
回复
添加链接服务器Server或Client,参见
http://expert.csdn.net/Expert/TopicView1.asp?id=949387
lswc 2003-04-03
  • 打赏
  • 举报
回复
是的呀。
就是说别名.库名.dbo.表名 不能有三级。
我试过去掉dbo 写成
select * into testlink.ping.test form ping.dbo.test
这样没有出错。但是对方数据库里没变化。
pengdali 2003-04-03
  • 打赏
  • 举报
回复
你是用sa做的联结服务器吗?报什么错?
lswc 2003-04-03
  • 打赏
  • 举报
回复
远程服务器是建好的。
可以将数据从远程插入本地表。
我是直接在查询分析器调试这句sql语句的。
lswc 2003-04-03
  • 打赏
  • 举报
回复
pengdali(大力) 兄
你这样写没错,但好像对方的主机也存这个表才能行。我那个写可以将远程的表更新到本地。
如果本地未建表就自动建表。
可是却不能将数据传到远程库中。
pengdali 2003-04-03
  • 打赏
  • 举报
回复
应该是:

insert 别名.库名.dbo.表名 select * from 库名.dbo.表名

吧?
pengdali 2003-04-03
  • 打赏
  • 举报
回复
直接在查询分析器里调用你的存储过程呢?
caiyunxia 2003-04-03
  • 打赏
  • 举报
回复
先建立远程服务器

22,301

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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