什么是mysql中列的默认值
发表于:2025-02-01 作者:千家信息网编辑
千家信息网最后更新 2025年02月01日,下面讲讲关于什么是mysql中列的默认值,文字的奥妙在于贴近主题相关。所以,闲话就不谈了,我们直接看下文吧,相信看完什么是mysql中列的默认值这篇文章你一定会有所受益。在 MySQL 中,每个字段定
千家信息网最后更新 2025年02月01日什么是mysql中列的默认值
下面讲讲关于什么是mysql中列的默认值,文字的奥妙在于贴近主题相关。所以,闲话就不谈了,我们直接看下文吧,相信看完什么是mysql中列的默认值这篇文章你一定会有所受益。
在 MySQL 中,每个字段定义都包含附加约束或者修饰符,这些可以用来增加对所输入数据的约束。
NULL 和 NOT NULL 修饰符、DEFAULT 修饰符,AUTO_INCREMENT 修饰符。
NULL 和 NOT NULL 修饰符
可以在每个字段后面都加上这 NULL 或 NOT NULL 修饰符来指定该字段是否可以为空(NULL),
还是说必须填上数据 (NOT NULL)。MySQL 默认情况下指定字段为 NULL 修饰符,如果一个字段指定为NOT NULL,
MySQL 则不允许向该字段插入空值(这里面说的空值都为 NULL),因为这是 "规定"。
但是在自增列和 TIMESTAMP 字段中,这个规则并不适用。
向这些字段中插入 NULL 值将会导致插入下一个自动增加的值或者当前的时间戳。
mysql> create table t10 ( -> id int not null default 0, -> name char(10) not null default '' -> );Query OK, 0 rows affected (0.01 sec)#插入2个值是ok的.mysql> insert into t10 values (1,"lisi");Query OK, 1 row affected (0.08 sec)#只插入一个值,也是ok的.mysql> insert into t10 (id) values (2);Query OK, 1 row affected (0.00 sec)#发现未插入的name列继承default的""值.mysql> select * from t10;+----+------+| id | name |+----+------+| 1 | lisi || 2 | |+----+------+2 rows in set (0.00 sec)mysql> select * from t10 where name = '';+----+------+| id | name |+----+------+| 2 | |+----+------+1 row in set (0.00 sec)#创建t11表,字段id,name不为null.mysql> create table t11 ( id int not null, name char(10) not null);Query OK, 0 rows affected (0.01 sec)#如果只插入其中一列,发现报错,其中另一列不能为空.mysql> insert into t11 (id) values (2);ERROR 1364 (HY000): Field 'name' doesn't have a default value#如果第二列插入"null"也会报错,设置字段为not null.mysql> insert into t11 (id,name) values (2,null);ERROR 1048 (23000): Column 'name' cannot be null#插入"0",""字段是ok的.mysql> insert into t11 (id,name) values (2,0);Query OK, 1 row affected (0.00 sec)mysql> insert into t11 (id,name) values (2,"");Query OK, 1 row affected (0.01 sec)
结论:
如果一个字段中没有指定 DEFAULT 修饰符,MySQL 会依据这个字段是 NULL 还是 NOT NULL 自动设置默认值。
如果指定字段可以为 NULL,则 MySQL 为其设置默认值为 NULL。
如果是 NOT NULL 字段,MySQL 对于数值类型插入 0,字符串类型插入空字符串.
对于以上什么是mysql中列的默认值相关内容,大家还有什么不明白的地方吗?或者想要了解更多相关,可以继续关注我们的行业资讯板块。
字段
数据
类型
还是
下文
主题
内容
地方
奥妙
字符
字符串
情况
数值
文字
时间
是在
更多
板块
空字符
篇文章
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
青岛鼎盛网络技术有限公司
db2添加数据库
网络安全工程师兼职网站
网络安全和信息道德教案
蓝牙软件开发培训
数据库创建数据表字段名
联想投资软件开发
网络技术现状调研报告
国三网络技术分值分配
汕头定制软件开发
邬院士讲网络安全
通用数据库有哪几个
软件开发的产品与服务
戴尔服务器液晶屏
网络安全面试流程
国外知名的物流软件开发公司
服务器端口开放后不通
企业网络安全的内容
各大厂商服务器保存位置
晋城网络技术团队
怎么管理asp服务器
文件服务器操作记录
怎么将文件传到腾讯云服务器
私人数据库使用
东软网络安全法考试
对未来网络安全的期待和看法
软件开发的法规规范
瑞庭网络技术有限公司苏州分公司怎么样
自学软件开发需要什么
笔记本的服务器ip账号密码