>백엔드 개발 >PHP 튜토리얼 >enum数据类型默认值的困惑解决思路

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

WBOY
WBOY원래의
2016-06-13 10:05:521381검색

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

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.