当前位置: 代码网 > it编程>数据库>Mysql > MySQL设置数据格为空白或NULL问题及解决

MySQL设置数据格为空白或NULL问题及解决

2026年04月16日 Mysql 我要评论
前言昨天打算建个数据库来做个项目, 有个需求是把数据库中的一些格子设置为空白,但是不知道怎么做,感觉直接传个空字符串进去也不能算是"空白;"我先尝试了不传值(现在来看是真的有点蠢)

前言

昨天打算建个数据库来做个项目, 有个需求是把数据库中的一些格子设置为空白,但是不知道怎么做,感觉直接传个空字符串进去也不能算是"空白;"

我先尝试了不传值(现在来看是真的有点蠢) ,然后phpmyadmin提示"这行要有仨值,你就给了俩"

甚麽意思呢, 比如第一列和第二列我都给了5个数据,那么现在这俩都是5行,但是第三列我只给了俩数据,这样3 4 5行都缺了一块,就会出现这个错误;

1. 设置为空白

如果需要某个格子为空白, 可以为其所在的字段设置默认值, 但是不能不传值,那会报错;

然后需要设为空白的位置写入值default即可;

或者更直接一点直接往格子里给个空字符串…

但注意是空字符串,不要在引号中间再敲一个空格.

是的,一开始我也觉得 传进去一个空字符串这个格子也不能算真的"空了",但确实是应该这么做:

公式:

 [字段名] [字段类型]  default '',

例:

insert into test1(id, name, password) values(1, "张五", "王五"), (2, "张三", default), (3, "王二麻子", default), (4, "李四", default), (4, default, default)
//name的默认值是null,所以这里的两个default会显示不同的结果;

2. 设置为null

设置为null就和直接传个空白字符串不一样了,格子里会实实在在的存在一些东西,在mysql中是会占用空间的。

这种方法是设置默认值为null,举个例子你要是只给1,2列传了数据,第三列没管,那第三列此时就全是null。

公式:

alter table [数据表名称] modify [字段名] [字段类型] default null;

例:

alter table index_nav modify imgs varchar(255) default null;
//直接什么都不给imgs吧
insert into index_nav (url, texts)
values ("./blogs.php","博客"),

 ("./columns","专栏"),

 ("./download.php","下载"),

 ("./qa.php","问答"),

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2026  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com