NOT NULL 和NULL

yipeiwu_com6年前PHP代码库
NOT NULL | NULL:指定该列是否允许为空。如果既不指定NULL也不指定NOT NULL,列被认为指定了NULL
在 MySQL 中, 
为一个 NOT NULL 字段设置 NULL 值 , 
它并不会出错, 
MySQL 会自动将 NULL值转化为该字段的默认值, 
那怕是你在表定义时没有明确地为该字段设置默认值 
:》一般来说MySQL会自动为你添加默认值的, 

比如 
为一个 NOT NULL 的 整型 赋 NULL 值, 
结果是 0 

CHAR 型 
-> ''空值 

DATATIME 
->'0000-00-00 00:00:00' 

等等
Top

2 楼UNICORN_BX(天天天蓝)回复于 2003-01-13 11:22:18 得分 0 也就是说,MySQL中NOT NULL并不是一个约束条件了. 

如果字段设置为NULL,则插入记录时没有给予该字段的值,那么MySQL自动用Default的值,如果没有Default,则无论是该字段是什么类型该字段值NULL. 

这是不是就是MySQL中NOT NULL和NULL所起到的作用,即当不为定义Default值的时候,给予的默认值的不同.

相关文章

PHP闭包定义与使用简单示例

本文实例讲述了PHP闭包定义与使用。分享给大家供大家参考,具体如下: <?php function getClosure($i) { $i = $i.'-'.dat...

php对图像的各种处理函数代码小结

一、创建图片资源 imagecreatetruecolor(width,height);imagecreatefromgif(图片名称);imagecreatefrompng(图片名称)...

PHP二维数组排序简单实现方法

本文实例讲述了PHP二维数组排序简单实现方法。分享给大家供大家参考,具体如下: function multi_compare($a, $b) { $val_arr = array...

PHP使用stream_context_create()模拟POST/GET请求的方法

本文实例讲述了PHP使用stream_context_create()模拟POST/GET请求的方法。分享给大家供大家参考,具体如下: 有时候,我们需要在服务器端模拟 POST/GET...

PHP面相对象中的重载与重写

重写Overriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中多态性的一种表现。Overloaded的方法是可以改变返回值的类型。也就是说,重载的返回值类...