如何才能保证在dbgrid中编缉(添加/修改)的记录中不存在空值的字段?(10分)

G

gmwing

Unregistered / Unconfirmed
GUEST, unregistred user!
如何才能保证在dbgrid中编缉(添加/修改)的记录中不存在空值的字段?
 
在dataset的onpost事件中判断
 
将此数据库的相关字段设计成不能为空的字段。
程序中提示(因为当一个字段设为不能为空。如果程序中保存为空就会触发异常)
try
ado.post;
except
on exception do messagedlg('字段不能为空',mterror,[mbok],0);
end;
 
我用的是C++Builder 自己看着改吧! 绝对好使!

void __fastcall TForm1::DataSource1DataChange(TObject *Sender,
TField *Field)
{
if (Field!=NULL)
{
if (Field->IsNull)
Field->AsInteger=0;
}
}
 
field!=null 在某些数据库中不好判断,有时候你到了焦点处按一下回车,
它也认为不为空的,所以最好的方法只有将数据库本身相关的字段设为not null
 
控制control的值,用Length计算control值的长度如果为显示出错框
 
顶部