有一个主从表,用adoquery1主表,adoquery2从表.进行数据提交,设置的locktype为ltBatchOptimistic.
进行批量提交,
先提交从表数据,再提交主表数据.
在主表中有触发器,读取子表的数据,因为一定要先提交子表,在触发器中才可以获取子表的数据.
然后进行一些列的判断,当条件不允许时.,就不允许保存,用了.raiserror(@strOutPut,18,18) 命令输出一个错误信息.一何存失败时,子表的数据交全部没有了.
我查看了一下.主要是那条获取子表数据的,把它去掉就不会出现子表的数据都没有,不知道有没有别的办法处理
INSERT #Temp(Number,InputWareHouse,Datum_Number,Qty)
SELECT Number,ISNULL(InputWareHouse,''),ISNULL(Datum_Number,''),ISNULL(Qty,0) FROM Ware_InputChild WHERE Input_Number=@intInPutNumber
Ware_InputChild这个就是子表触发器中用了这条语句.