如何将datetime型变量赋为空值,并将此空值传给TABLE的字段参数。
var
 time:Tdatetime ;
begin
 time := null ;      //此行报错,应将dt置为空值
 oratable1.Close ;
 oratable1.SQL.Text := 'update tablename set rq = :rq ';
 oratable1.ParamByName('rq').AsDateTime := time ;  //此行赋空值给字段
 oratable1.ExecSQL ;
end;问题:
1、time := null 报错
2、怎样用空值更新原字段rq

解决方案 »

  1.   

    Oracle中:
    update tablename set rq = null
    或者
    with YourTable do begin
      ...
      ParamByName('rq').AsVariant := NULL;
      ...
    end;
      

  2.   

    var
     time:Tdatetime ;
    begin
     time := 0 ;      
     oratable1.Close ;
     oratable1.SQL.Text := 'update tablename set rq = :rq ';
     oratable1.ParamByName('rq').Value := Null;  
     oratable1.ExecSQL ;
    end;
      

  3.   

    不要有参数了
    begin
     //time := null ;      //此行报错,应将dt置为空值
     oratable1.Close ;
     oratable1.SQL.Text := 'update tablename set rq = Null';
     //oratable1.ParamByName('rq').AsDateTime := time ;//此行赋空值给字段
     oratable1.ExecSQL ;
    end;
      

  4.   

    oratable1.ParamByName('rq').Value := NULL;