B baniu Unregistered / Unconfirmed GUEST, unregistred user! 2002-06-22 #1 用ADO连接SQLSERVER的主-明细-子明细表,在录入数据时,子明细表录入后,转到明细时, 如何解决子明细的重提数据的问题?(分不够可以再加)
G gxdog Unregistered / Unconfirmed GUEST, unregistred user! 2002-06-22 #2 我刚编写个ADO+证明细的,我想可以帮你忙。但不懂你“重提数据”是什么意思。 是重新提取数据吗?能说具体点吗?
B baniu Unregistered / Unconfirmed GUEST, unregistred user! 2002-06-22 #3 我用的是ADO的UPDATABATCH模式,在ADODATASET里用SQL参数连表,当我输完明细的子明 细之后,再输入第二条明细及其子明细时,再转第一条明细,此时ADODATASET会重新提取 子明细的相关数据,而此时,输的第一条明细的子明细还在缓存中,并没有存到数据库中。 ADODATASET重新根据其参数去表中提取数据,而提不到,从而我先输的记录不见了。不知 我讲的清不清楚。要不请你留下QQ。
我用的是ADO的UPDATABATCH模式,在ADODATASET里用SQL参数连表,当我输完明细的子明 细之后,再输入第二条明细及其子明细时,再转第一条明细,此时ADODATASET会重新提取 子明细的相关数据,而此时,输的第一条明细的子明细还在缓存中,并没有存到数据库中。 ADODATASET重新根据其参数去表中提取数据,而提不到,从而我先输的记录不见了。不知 我讲的清不清楚。要不请你留下QQ。
N nplang Unregistered / Unconfirmed GUEST, unregistred user! 2002-06-22 #4 你ADODATASET的属性怎么设置?Cousortype、locktypet怎么设的?
B baniu Unregistered / Unconfirmed GUEST, unregistred user! 2002-06-22 #5 Cousortype: 是CURSORTYPE吧,我设的是:ctKeyset locktypet: 是LOCKTYPE吧,我设的是:ltBatchOptimistic
M mlzhou Unregistered / Unconfirmed GUEST, unregistred user! 2002-06-22 #6 //重新根据其参数去表中提取数据???? 这里是不是作关闭动作了。这是不行的。
B baniu Unregistered / Unconfirmed GUEST, unregistred user! 2002-06-22 #7 那要怎么用ADO的缓存更新方式连接SQLSERVER2000的主-明细-子明细表啊。 特别是新增和修改时记录及DATASET之间的切换怎么办啊。
M mlzhou Unregistered / Unconfirmed GUEST, unregistred user! 2002-06-22 #8 修改时用locate,next,prior等作定位就行了。增加直接append就行了。 我不明白为什么你要作关闭动作。
B baniu Unregistered / Unconfirmed GUEST, unregistred user! 2002-06-22 #10 POST也没有用啊,我主表增加一条,明细增加两条,子明细增加四条(对应每条明细两条), 输完第一条明细及子明细,我又要输第二条明细及其子明细,这时第一条明细及子明细保存 在缓存中,子明细的DATASET要刷新,又要从第一条开始。这样会冲掉我第一条明细的子明细啊。
POST也没有用啊,我主表增加一条,明细增加两条,子明细增加四条(对应每条明细两条), 输完第一条明细及子明细,我又要输第二条明细及其子明细,这时第一条明细及子明细保存 在缓存中,子明细的DATASET要刷新,又要从第一条开始。这样会冲掉我第一条明细的子明细啊。
M mlzhou Unregistered / Unconfirmed GUEST, unregistred user! 2002-06-22 #11 你到底是怎么做的?我怎么越看越糊涂。实际上你就是多表更新。 //子明细的DATASET要刷新?????? 那你用缓存更新干吗?
N nplang Unregistered / Unconfirmed GUEST, unregistred user! 2002-06-22 #13 对啊,不就是多表更新问题。怎么这么复杂呢? 把代码扪出来!
B baniu Unregistered / Unconfirmed GUEST, unregistred user! 2002-06-23 #14 可能是我没有说清楚,本来,我们的主-明细表,在输入记录时,主表一条记录要对应明细表 多条记录,而且修改时是不能让主表移动记录的,对吧? 现在我用的是主-明细-子明细表。 即明细还有子明细。而明细不止一条,一条明细又会对应多条子明细。录入数据时我能不让 明细移动记录吗?不让移动,要录入第二条明细怎么办?让他移动,先前的子明细又要怎么 办呢?
可能是我没有说清楚,本来,我们的主-明细表,在输入记录时,主表一条记录要对应明细表 多条记录,而且修改时是不能让主表移动记录的,对吧? 现在我用的是主-明细-子明细表。 即明细还有子明细。而明细不止一条,一条明细又会对应多条子明细。录入数据时我能不让 明细移动记录吗?不让移动,要录入第二条明细怎么办?让他移动,先前的子明细又要怎么 办呢?
K kim64 Unregistered / Unconfirmed GUEST, unregistred user! 2002-06-24 #15 如果要做这个动作的话最好的办法是请你用CLIENTDATASET去连接上你的ADODATASET,这样 缓存中的数据就会留下来,然后你就去利用CLIENTDATASET的APPLYUPDATES 去更新数据
如果要做这个动作的话最好的办法是请你用CLIENTDATASET去连接上你的ADODATASET,这样 缓存中的数据就会留下来,然后你就去利用CLIENTDATASET的APPLYUPDATES 去更新数据
Z zhbj2 Unregistered / Unconfirmed GUEST, unregistred user! 2002-07-04 #18 主表的locktype 可以为ltbatchoptimistic 从表的locktype 要为ltoptimistic(立即更新),否则 在主表(对于从明细来说是明细表)数据滚动时,从表是要刷新的,但 你无法控制从表的更新工作,除非从表post 后立即updatebatch ,如此 以来反而不如ltoptimistic有效 .
主表的locktype 可以为ltbatchoptimistic 从表的locktype 要为ltoptimistic(立即更新),否则 在主表(对于从明细来说是明细表)数据滚动时,从表是要刷新的,但 你无法控制从表的更新工作,除非从表post 后立即updatebatch ,如此 以来反而不如ltoptimistic有效 .
无 无忧鱼 Unregistered / Unconfirmed GUEST, unregistred user! 2002-07-05 #19 我是这样做的,当从表提交时,我将从表的数据集CLONE成另一个数据集,再从这个数据集中 查找所输入的这条记录是否重复,如主键重复等,如果存在那么不许保存