也可以在BeforePost事件中判断 procedure TForm1.ADOTable1BeforePost(DataSet: TDataSet); var i : integer; begin for i := 0 to adotable1.FieldCount-1 do begin case adotable1.Fields.Fields[i].DataType of ftString : if length(adotable1.Fields.Fields[i].AsString) <= 0 then begin showmessage('字符串不能空'); abort; end; ftInteger: if length(adotable1.Fields.Fields[i].AsString) <= 0 then begin showmessage('数字不能空'); abort; end; ftDateTime: if adotable1.Fields.Fields[i].AsDateTime = 0 then begin showmessage('日期不能空'); abort; end; ftCurrency: if adotable1.Fields.Fields[i].IsNull then begin showmessage('金额不能空'); abort; end; end; end; end;
你试试
procedure TForm1.ADOTable1BeforePost(DataSet: TDataSet);
var
i : integer;
begin
for i := 0 to adotable1.FieldCount-1 do
begin
case adotable1.Fields.Fields[i].DataType of
ftString :
if length(adotable1.Fields.Fields[i].AsString) <= 0 then
begin
showmessage('字符串不能空');
abort;
end; ftInteger:
if length(adotable1.Fields.Fields[i].AsString) <= 0 then
begin
showmessage('数字不能空');
abort;
end;
ftDateTime:
if adotable1.Fields.Fields[i].AsDateTime = 0 then
begin
showmessage('日期不能空');
abort;
end;
ftCurrency:
if adotable1.Fields.Fields[i].IsNull then
begin
showmessage('金额不能空');
abort;
end;
end;
end;
end;