你好,newbie:<br>如果是非空列,指的就是不能为null,此空不是''(空串),delphi的数据感知控件是自动构造sql语句的,如果是非空列,在dataset的OnNewRecord事件一定要加上<br> dataset.fieldbyname('myIntegerValue').asinteger := 0;<br>如果要插入一条记录,又设了默认值,有良种方法:<br>1.在客户端软件指定值 eg: insert into ta (af,bf) values('0',0);//自动转换类型<br> 具体到delphi,dataset 的 onnewrecord 事件 写<br> dataset.fieldbyname('bf').asinteger := 0; //就ok<br>2.在客户端软件不指定值,sql服务器自己添加 insert into ta(af) values('0');//此句,如果服务器端设置了 ta 表 bf 字段是 默认为 0 ,就会自己加上,无论是否允许null,<br><br>如果以上都看不懂,还是,hehe