query的查询,编辑问题(50分)

  • 主题发起人 主题发起人 mnmn
  • 开始时间 开始时间
M

mnmn

Unregistered / Unconfirmed
GUEST, unregistred user!
由两个数据库,想做一个连接,可以显示,编辑;
如:a1.db 有字段bm,ssj; 有记录
1, 98.5
3, 122
9, 1566
152, 255
555, 256
....
a2.db有字段bm,mc,dj,有记录
1 , aaa , 96.3
55, bbb , 63.2
1 , aaa , 96.3
3 , ccc , 50
555,bbb , 63.2
现在想做一个连接,得到的结果应该是:bm,mc,dj,sscj,去掉相同记录及a2.db中没有的记录:
1,aaa,96.3,98.5
3,ccc,50,122
555,bbb,63.2,256
结果在dbgrid中显示,并且要可以编辑,修改的ssj字段的值要能保存到a1.db中.
 
要对用Query查到的数据进行修改,是有一些条件的。
1.查询的数据只能从一个表中得到
2.不能用group by、order by 等
3.不能用sum、count 之类的函数。
鉴于你上面要从两个表中查询,恐怕不能在dbgrid中直接修改
 
可先将查询到的数据先存入一临时表,然后再对临时表进行修改,最后再把临时表的
数据倒入a1.db,当然,如果bm相同就覆盖。
 
g:wind2000
在临时表里作个触发器.
 
系统能自动根据你针对查询结果添加的记录,分别插入到不同的数据库中吗?恐怕不行
 
这样吧:
select distinct * from a1,a2
where a1.bm=a2.bm
在dbgrid中选择显示的列
至于更改,用updatesql吧,这个query没办法现场更新的

 
多人接受答案了。
 
后退
顶部