数据库中的NULL
表示“没有对(列)变量输入数据”,即在数据库中的NULL
可以区分“没有对(列)变量输入数据”和“有对(列)变量输入数据”这两类情况。而输入空字符串,则是这里的“有对(列)变量输入数据”这一类情况,即有输入数据,只是输入的数据为空字符串(含有终止符的还是)。从这个意义上讲,如int t;语句,也是属于这里的“有对(列)变量输入数据”这一类情况,只是不是有程序员自己输入值,而是由(编译)系统输入一个随机数而已。
数据库中的NULL
和C++等语言中的NULL
的区别:
数据库中的NULL
是一个关键字,表示“没有对(列)变量输入数据”;
C++等语言中的NULL
是一个宏,表示为整数0一般。
所以在源代码的绑定变量函数里不能使用Null(是一个宏)或是'Null'(是一个字符串),因为两者都不表示数据库中的关键字
NULL。
当然,在源代码里,不含有绑定变量的SQL语句字符串(如,“insert into 表1 values(null,null)”)里出现Null是可以作为数据库的Null解释的,该SQL语句字符串用step函数执行可以成功达到目的即表字段里的值为Null