楼主用的什么数据库,如果支持后台存储过程,可在update触发器里判断修改了那个字段,( IF UPDATE(字段名) ) 然后对判断结果做相应的处理.
很简单啊 在ADOQuery的BeforePost事件中判断就行了譬如 if VarToStr(ADOQuery1.FieldByName('第八个字段').OldValue) <> VarToStr(ADOQuery1.FieldByName('第八个字段').NewValue) then begin messagebox('第八个字段修改,不允许保存'); Abort; end;搞定,至于第十个,一样的发挥
使用 IF UPDATE 子句测试数据修改 下例在表 my_table 中创建名为 my_trig 的 INSERT 触发器,并测试列 b 是否受到任何 INSERT 语句的影响。CREATE TABLE my_table* (a int NULL, b int NULL) GOCREATE TRIGGER my_trig ON my_table FOR INSERT AS IF UPDATE(b) PRINT 'Column b Modified' GO
然后对判断结果做相应的处理.
在ADOQuery的BeforePost事件中判断就行了譬如
if VarToStr(ADOQuery1.FieldByName('第八个字段').OldValue) <> VarToStr(ADOQuery1.FieldByName('第八个字段').NewValue) then
begin
messagebox('第八个字段修改,不允许保存');
Abort;
end;搞定,至于第十个,一样的发挥
下例在表 my_table 中创建名为 my_trig 的 INSERT 触发器,并测试列 b 是否受到任何 INSERT 语句的影响。CREATE TABLE my_table*
(a int NULL, b int NULL)
GOCREATE TRIGGER my_trig
ON my_table
FOR INSERT
AS
IF UPDATE(b)
PRINT 'Column b Modified'
GO