我看到很多关于多表连接,单表更新问题的回答,我现在再次请教各位这个问题:
问题的描述我摘自一位曾经问过的网友的提问
我在网上看到一位朋友的问题与我一样的问题,他说的更详细如下:
数据库是sql server7,前端用ADO控件连接。
有两个表,数据分别是:
hp(货品表)
id name
1 A
2 B
3 C
4 Dcgd(采购单,idhp与hp的id关联)
id idhp sl rq
1 1 2 2002-01-01
2 2 3 2002-01-02
3 3 4 2002-01-01
4 4 5 2002-01-01在Tadoquery1的sql写:
select a.*,b.name from cgd left join hp on cgd.idhp=hp.id where cgd.rq="2002-01-01"
Tadoquery1.LockType:=itBatchOptimistic当adoquery1.insert,从HP中选择一个物品,同时修改了adoquery1中的idhp,name,
然后adoquery1.post时,adoquery1.updatebatch()时就会出错,说是在hp中增加了一行,hp的id不能为NULL,
我的问题是,如何避免这个问题?,如何用ADO实现多表连接单表更新的问题?我也曾设置ProviderFlags的属性为false就行了,可是只在name不赋值时才起作用.那位有好的办法,当然最好不要使用两个adoquery,我以200分相赠送.