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值的时候,给予的默认值的不同.

相关文章

array_multisort实现PHP多维数组排序示例讲解

array_multisort — 对多个数组或多维数组进行排序 说明 bool array_multisort ( array ar1 [, mixed arg [, mixed .....

php图片加水印原理(超简单的实例代码)

文字水印: 复制代码 代码如下: $w = 80; $h = 20; $im = imagecreatetruecolor($w,$h); $textcolor = imagecolor...

使用PHP强制下载PDF文件示例

我们有时会遇到这样一种情况,当需要下载一个PDF文件时,如果不经处理会直接在浏览器里打开PDF文件,然后再需要通过另存为才能保存下载文件。本文将通过PHP来实现直接下载PDF文件。 实现...

提高PHP编程效率的方法

1、如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍。2、$row['id'] 的速度是$row[id]的7倍。3、echo 比 print 快,并且...

PHP 作用域解析运算符(::)

Scope Resolution Operator (::) 今天 看joomla源码的时候,才意识到。原来这个操作符还可以访问类的非静态方法啊。真的让我吃惊不好。一直以为作用域解析运算...