数据库中有一个字段设置为非空。如果从DBGrid中录入时该字段没有录入值,程序怎么捕获'Field must have a value'的错误?(20分)

  • 主题发起人 主题发起人 jdelphi
  • 开始时间 开始时间
J

jdelphi

Unregistered / Unconfirmed
GUEST, unregistred user!
数据一移动就会报错。从BeforePost,PostError等地方都无法截获该错误
从字段的onValidate可以,但是一移开该字段的列就会报错,有点麻烦
 
在Constrains属性中添加
TheField<>NULL
和相应的自定义错误信息

-----
http://www.8421.org
 
能够再详细一点吗?
 
这个错误应该是数据库返回的错误,在BEFOREPOST里面应该可以捕获啊,你移开该字段的时候程序所做的工作就是POST,
 
楼上的是想当然,试试就知道不行,只有用Constraints
点你table或者query控件的Constraints属性,然后添加一个Constraint,其
CustomConstraint属性设置为 yourfieldname<>NULL
ErrorMessage 设置为 xx要求输入
 
怎么还不起作用呢?
要求字段 jsm不能为空,我设置的 CustomConstraint为 jsm is not null
 
在Table的Fields Editor中,将那个字段的Required属性改为False试试。
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
1K
DelphiTeacher的专栏
D
I
回复
0
查看
974
import
I
后退
顶部