我给你举个例子吧,比如插入数据到表tbl,tbl有2个字段Id,Name。 INSERT INTO tbl( Id ,Name ) VALUES( 1, '' ) INSERT INTO tbl( Id ) VALUES( 1 ) 至于区别是怎么回事我也说不清楚,不过这个时候就要用到这个区别。本回答被网友采纳
第2个回答 2017-12-20
is null用于查询语句,=''用于更新语句
第3个回答 2013-04-14
select * from sc where grad is null 就是说查询 sc 表中 grad列中不为空的选项 select * from sc where grad = "" 就是查询sc表中 grad列中为空的选项
第4个回答 2013-04-14
有一点区别的!
在数据库中存在这样的数据: 取出的内容什么也没有,在数据库中没有填写任何东西,这时取出的值当然是空值。有一个情况是数据库中的值本身就是空值null,也就是说VB,C#和SQL中都存一种数据形式是null的。严格的区别这在这儿。 isnull是VB中的一种判断,判断取出的值是否是null,当然在SQL中也有这种形式的谓词,is null,这个谓词可以直接用在SQL语句中。如: select * from 表名 where 列名 is null 表示查询特定列为null的记录。这时如果在数据库中该列定义为允许空,而没有填写任何东西的则不会出现。 说白了,在VB中isnull做为一个函数来判断SQL中是否传递了null型的值。VB中也存在这种类型的!
isEmpty则是不同的,它的作用是判断字符串是否为空!当然同时也会判断VB中null值的类型,但需要说明的一点是Null值还要涉及一个问题,它是SQL中的类型还是VB另的类型,虽说名称一样,但实际是不同的。 如果在VB中使用了这样的一句话: dimm str as string 而还没有对str进行赋值时,存是不存在的!此时在VB中str值的类型就是空值,可以用isnull和isEmpty进行测试。
这说明了它与=""的不同之处,=""则表示为“空值”,它的意义在于变量有值,值是存在的,只不过是一个空字符串,也是对字符串进行的一种测试,但是如果 我只定义了某一个变量,此时就对其进行=""是不合适的。如: dimm str as string str = "" 这样会出现错误。但使用isEmpty则不会出错。