作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
每当我们在 mysql 数据库中创建表时,都会出现一个空复选框选项。如果单击它,那么它也将采用空值,如果它保持未选中状态,那么它也将采用空值。这是什么意思?
最佳答案
NULL
用于表示“无值”并允许区分 1 和 0、真或假,或者空字符串与包含内容的字符串。它类似于 Ruby 中的 nil
、JavaScript 中的 null
或 PHP 中的 NULL
。
如果您将一列定义为 NOT NULL
,则它不允许在没有为该列指定值的情况下执行 INSERT
。如果你有一个 DEFAULT
那么这将被自动应用。如果您使用 ORM,它可能会为您填充一个安全的、最小的默认值。
可以为 NULL
的列每行需要几乎微不足道的额外存储空间,一位,用于保存 NULL
或 NOT NULL
旗帜。
请记住,NULL
在 MySQL 中是不寻常的,因为它不大于、小于或等于任何其他值。这就是逻辑比较需要 IS NULL
和 IS NOT NULL
的原因。
关于mysql - MySQL数据库中NULL和NOT NULL是什么意思,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12323001/
我是一名优秀的程序员,十分优秀!