M m&m Unregistered / Unconfirmed GUEST, unregistred user! 1999-11-29 #1 往数据库中录入一条信息后,在录入下一条时,将该条记录的 某些字段的值带入到下一条。
M m&m Unregistered / Unconfirmed GUEST, unregistred user! 1999-11-29 #3 记得在PB、PO等开发工具中,控件本身有这样的属性。 DELPHI 没有吗? 我想Trigger 也可以完成,不过有DELPHI 自己的方法吗 ?
蚯 蚯蚓 Unregistered / Unconfirmed GUEST, unregistred user! 1999-11-29 #4 var OldValue:Variant; DataSet.BeforeInsert: begin with Sender do if not eof then OldValue:=FieldByName('xxx').Value; end; DataSet.AfterInsert: begin with Sender do FieldByName('xxx').Value:=OldValue; end; 大概思路是这样的,应该可以实现,具体控制你自己研究吧。
var OldValue:Variant; DataSet.BeforeInsert: begin with Sender do if not eof then OldValue:=FieldByName('xxx').Value; end; DataSet.AfterInsert: begin with Sender do FieldByName('xxx').Value:=OldValue; end; 大概思路是这样的,应该可以实现,具体控制你自己研究吧。
H Hexi Unregistered / Unconfirmed GUEST, unregistred user! 1999-11-29 #5 你用的是什么数据库,如果是Interbase,Sql server等的话,可以将此处理 放入触发器。 如果是本地paradox。可用蚯蚓的方法
H Hexi Unregistered / Unconfirmed GUEST, unregistred user! 1999-11-29 #6 下面给出一个例子,是将前一记录的FieldName+1赋给新插入的记录。 CREATE TRIGGER aaa FOR TableName AFTER INSERT POSITION 0 AS BEGIN UPDATE TableName SET FieldName=OLD.FieldName+1 WHERE TableName.ID=New.ID; SUSPEND; END
下面给出一个例子,是将前一记录的FieldName+1赋给新插入的记录。 CREATE TRIGGER aaa FOR TableName AFTER INSERT POSITION 0 AS BEGIN UPDATE TableName SET FieldName=OLD.FieldName+1 WHERE TableName.ID=New.ID; SUSPEND; END
M m&m Unregistered / Unconfirmed GUEST, unregistred user! 1999-11-29 #9 诸位高手: 能否可以考虑给现有的控件加入这种复制属性呢 ??? 不知道 DELPHI 能否实现 ?望大虾们赐教 !!!!
M m&m Unregistered / Unconfirmed GUEST, unregistred user! 1999-12-01 #11 to Hexi: “UPDATE TableName SET FieldName=OLD.FieldName+1 WHERE TableName.ID=New.ID;” 如何得到TableName.ID 和 New.ID ?
to Hexi: “UPDATE TableName SET FieldName=OLD.FieldName+1 WHERE TableName.ID=New.ID;” 如何得到TableName.ID 和 New.ID ?
M m&m Unregistered / Unconfirmed GUEST, unregistred user! 1999-12-01 #12 to Hexi: 你说的 ID 指的是 ROWID 吗? “SUSPEND;”----- 嘛意思 ?
H Hexi Unregistered / Unconfirmed GUEST, unregistred user! 1999-12-01 #13 我写的是Interbase的Trigger. TableName.ID是自动有Interbase提供的。 New是Interbase提供的,你新插入或修改的记录。 Suspend可以不要。
M m&m Unregistered / Unconfirmed GUEST, unregistred user! 1999-12-02 #14 对于ORACLE 来说,TRIGGER 可能不能解决。 此时,只有当往数据库中插入记录时,TREIGGER 才被激活。 蚯蚓的办法道是保险一些。 另外,能否给现有控件加一个这种属性?如 何加?
S spear Unregistered / Unconfirmed GUEST, unregistred user! 1999-12-03 #15 trigger一般不好用,尤其中调试过程中。 还是在delphi解决为好,蚯蚓的办法我觉得 还是不太好,一是insert每一条记录时,情况 不同,难以控制;二是程序难以维护, 所以还是用变量吧.
M m&m Unregistered / Unconfirmed GUEST, unregistred user! 1999-12-03 #16 to spear: “......还是用变量.......” 此话怎讲 ?