如何对sql语句的参数赋空值(null).(50分)

  • 主题发起人 主题发起人 jacaboos
  • 开始时间 开始时间
Query1.ParamByName('pn').Value:=null;
 
insert into xxx values(:p1,:p2.......,:pn,......);
...
if edit1.text<>'' then
query1.params[n].asdatetime := strtodate(edit1.text)
else
query1.params[n] :=Null
 
做一个总结吧.
我在实际应用中是这样处理的:
if edit1.text<>'' then
query1.params[n].asdatetime := strtodate(edit1.text)
else
query1.params[n].asdatetime := strtodate('1900-1-1');

理由是: sql 增加纪录时,datetime 字段如果不显式赋值,系统自动赋以
默认值'1900-1-1',而不是null. 既然如此,用如上的方法,可以是程序易读,
并易于控制.
<本问题宣告结束,谢谢各位>
 
后退
顶部