不同数据库更新表多个字段问题

ou630j 2009-04-18 04:05:47
假设如下,两个数据库 mydata1,mydata2可能不在一个电脑上
两个数据库都有表mytable
我有表mytable
字段id,name,password,memo,gcode,gname,ycode,yname

现在我想通过id来更新数据
mydata1.mytable的数据
id,name,password,memo,gcode,gname,ycode,yname
1 张三年 123 1 1 2 1 2
2 除个别 123 1 1 2 1 2
3 除设定 123 1 1 2 1 2

mydata2.mytable的数据

id,name,password,memo,gcode,gname,ycode,yname
1 张三年 123 2 1 2 1 4
2 除个别 123 3 3 4 1 4
3 除设定 123 4 3 2 4 2
4 设定 321 2 3 4 5 6

现在我想得到mydata1.mytable的数据
的数据如下
id,name,password,memo,gcode,gname,ycode,yname
1 张三年 123 2 1 2 1 4
2 除个别 123 3 3 4 1 4
3 除设定 123 4 3 2 4 2

假设在一个机子上,请问大家有什么好方法来更新的吗》?

求代码,只要代码,不要思路




...全文
109 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
kaikai_kk 2009-04-18
  • 打赏
  • 举报
回复
哦,要完全适合你的代码可能几率为零,要懂的转变一下啊

UPDATE OPENDATASOURCE('SQLOLEDB','Data Source=远端IP;User ID=sa;Password=密码').mydata1.dbo.mytable
SET name=A.Name,password=A.password,memo=A.memo,gcode=A.gcode,gname=A.gname,ycode=A.ycode,yname=A.yname
FROM mydata2..mytable as A WHERE ID=A.ID
ou630j 2009-04-18
  • 打赏
  • 举报
回复
两个表名都相同的
好像不行
kaikai_kk 2009-04-18
  • 打赏
  • 举报
回复
A,B两个数据库不在同一电脑:
UPDATE OPENDATASOURCE('SQLOLEDB','Data Source=远端IP;User ID=sa;Password=密码').B.dbo.mydata1
SET name=A.Name,password=A.password,memo=A.memo,gcode=A.gcode,gname=A.gname,ycode=A.ycode,yname=A.yname
FROM A..mydata2 as A WHERE ID=A.ID

--------------------------------------

A,B两个数据库在同一电脑:
UPDATE B..mydata1
SET name=A.Name,password=A.password,memo=A.memo,gcode=A.gcode,gname=A.gname,ycode=A.ycode,yname=A.yname
FROM A..mydata2 as A WHERE ID=A.ID

未测试,自己试试吧
ou630j 2009-04-18
  • 打赏
  • 举报
回复
是根据id对应来更新的,有谁知道啊 高手快来

2,507

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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