我的Form上有Edit,使用ADOQuery连接SQLServer数据库,数据表Field的字段类型为int
现在我声明一个变量str并为其赋值str:=Edit.Text,
当str<>‘’时,将Field赋值为str,这个没问题
当str=‘’时,则将Field赋值为NULL,这个如何实现(不要判断句,只用一句SQL语句)

解决方案 »

  1.   

    不写这个字段,或者 字段=null
      

  2.   

    如果Field为int型,那么对应空值为0
    如果Field为文本类型,那么对应空值为NULL若想Field为NULL,则把Field设为为文本类型
    var
      ssql :string; begin
      str := edit1.text;
      if str=‘’ then
        str := NULL;
      ssql := 'update 表名 set Field = '+ str +' where ...'
    end;
      

  3.   

    Select sysdate from dual
      

  4.   

    create table tt(id int,name varchar(20))insert into tt values(null,null)