首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >MySQL之Field ’email’ doesn’t have a default value问题

MySQL之Field ’email’ doesn’t have a default value问题

作者头像
全栈程序员站长
发布2021-10-22 11:03:25
发布2021-10-22 11:03:25
2.2K0
举报

MySQL在出现这个Field xxx doesn’t have a default value错误的原因是:我们设置了该字段为非空,但是我们没有设置默认值照成的。

比如我们创建一个表:

CREATE TABLE IF NOT EXISTS `blog_user` (   `userid` smallint(5) unsigned NOT NULL auto_increment,   `username` varchar(20) NOT NULL default ”,   `passwd` char(32) NOT NULL default ”,   `email` varchar(30) NOT NULL,   PRIMARY KEY  (`userid`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8;

我们对email字段设置了not null 但是没有设置默认值 default,所以我们在插入的时候: INSERT INTO blog_user(username,passwd) VALUES(‘tomener’,md5(123456));

会报如下错误: Field ’email’ doesn’t have a default value

解决办法就是设置一个默认值,比如: `email` varchar(30) NOT NULL DEFAULT ”

很简单吧,就是加一个DEFAULT ”

    为什么我们会出现Field ’email’ doesn’t have a default value这样的错误呢,估计是你使用的phpmyadmin来创建的表,phpmyadmin创建表时,不能指定空的默认值,所以很不爽了,所以,不要用phpmyadmin来建表,推荐使用MySQLWorkbench

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/113292.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档