假高表M,字段MNO,MNAME
表P,字段PNO,MNO,
现在用ADO,COMMANDTEXT为 select pno,p.mno,mname from p,m where p.mno=m.mno,即想用ADO编辑P表,录入MNO的时候,调用M中的MNAME,现在有两个方面的困难:1.ADO添加一行数据的时候,P表和M表同时都会增加一行数据(M表会报空数据错误)2.录入MNO时,不能立即调到MNAME的值.请各位交流一下,大家经常怎么处理这种问题(经常应该用到的).我知道用查询字段,即AOD的COMMANDTEXT为select pno,mno from p,再将mname用查询字段可达到目的,但我不想那样做,原因有二,1。如果我要调用M表中的多个字段,显得很麻烦 2.如果M表数据很大,需同时打开另一个M表的数据集,速度会比用第一种方式慢很多
表P,字段PNO,MNO,
现在用ADO,COMMANDTEXT为 select pno,p.mno,mname from p,m where p.mno=m.mno,即想用ADO编辑P表,录入MNO的时候,调用M中的MNAME,现在有两个方面的困难:1.ADO添加一行数据的时候,P表和M表同时都会增加一行数据(M表会报空数据错误)2.录入MNO时,不能立即调到MNAME的值.请各位交流一下,大家经常怎么处理这种问题(经常应该用到的).我知道用查询字段,即AOD的COMMANDTEXT为select pno,mno from p,再将mname用查询字段可达到目的,但我不想那样做,原因有二,1。如果我要调用M表中的多个字段,显得很麻烦 2.如果M表数据很大,需同时打开另一个M表的数据集,速度会比用第一种方式慢很多
我也是分别修改表啊,例如M表是物料表,P表是采购单的明细表,我想在输入采购明细时调物物料表中的品名等字段,并用批量修改,一录入物料编码时,马上调出品名规格等,怎么样用ADO实现呢?
当然不是每个View都可以更新的,不过你可以试试
to Cipherliu(孤鹰) :用VIEW还是不行,一则删除的时候,会同时删除两个表;二则录入关键字段的时候,对应M表的值跳不出来
要在ADOQuery的AfterOpen事件中加入如下代码:
ADOQuery.Recordset.Properties['Unique Table'].Value:='A'
同时谢谢Delphi1985(ok) ,不过我觉得我的话够明白了!