Home >Backend Development >PHP Tutorial >enum数据类型默认值的困惑解决思路

enum数据类型默认值的困惑解决思路

WBOY
WBOYOriginal
2016-06-13 10:05:521381browse

enum数据类型默认值的困惑
数据结构如下:

`id`   INT   NOT   NULL   AUTO_INCREMENT   PRIMARY   KEY   ,
`test`   ENUM(   'N ',   'Y '   )   NOT   NULL

表名:test

SQL:
1.   insert   into   test   (   test   )   values   (   ' '   );
2.   insert   into   test   values   ();

当我使用SQL1后,最终在test这个字段中什么都没有显示
当我使用SQL2后,最终在test这个字段中显示的是 'N '

这是为什么呢?SQL1执行后不是应该也显示 'N '的码?请各位指教!

enum数据类型默认值的困惑

------解决方案--------------------
当你使用SQL1后,是对test字段插入一个空值,
而SQL2,表明你是对字段插入默认值,对于enum类型如果你不做显示指定默认(default 'Y ')的话,其默认值就是第一个,即N

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn