mysql - 没有得到 null 的概念

标签 mysql

大家好,

从mysql开始。我无法理解 NULL 的概念。检查屏幕截图(*declare_not_null,链接*)。在其中,当我特别声明“名称”字段为 NOT NULL 时。当我运行“desc test”表命令时,表描述显示名称字段的默认值为 NULL。为什么会这样?

从我读到的有关 NULL 的内容来看,它表示缺少或不适用的信息。因此,当我声明一个字段为 NOT NULL 时,这意味着(根据我的理解)用户必须为名称字段输入一个值,否则数据库引擎应该生成一个错误,即记录不会被输入到数据库中。但是,当我运行“插入测试值();”时数据库引擎在表中输入记录。检查屏幕截图(*empty_value,链接*)。

FLICKR 链接 *声明_not_null* http://www.flickr.com/photos/55097319@N03/5302758813/

*空值* 查看 flickr 上的第二个屏幕截图

问题 2 从表的字段中删除主键的 sql 语句是什么? 如果我使用“ALTER TABLE test drop key id;”它给出了以下内容:

错误: 表定义不正确; auto 列只能有一个,并且必须定义为键。

谢谢你的帮助..

最佳答案

您正在查看默认值列。数据库不允许您使用 null 更新或插入该列。

关于mysql - 没有得到 null 的概念,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4554630/

相关文章:

php - 如何在多个用户输入后更新同一行?

php - Symfony - 无法删除记录

mysql - 从 MySQL 中选择过去 24 小时内的行并根据间隔 X 跳过行?

mysql - 从调用触发器的插入中检索值

php - 如何排除选择和所有相关的(MySQL + PHP)

mysql - Phpmyadmin 运行很慢

php - 从表中选择随机但不同的行 - MySQL

mysql - SQL查询单词(不是句子)

java - 使用 JAX-RS、mysql、JSON、Jersey、Tomcat 的简单 REST CRUD Web 服务

mysql - 在内连接表后获取更新的日期字段行