MySQL之Field 'email' doesn't have a default value问题
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
最新文章
- MYSQL基础操作之数据约束与关联查询
- QT error: cannot find -lGL
- java代码性能优化总结(转载)
- iOS大神牛人的博客集合
- 【BZOJ】3289: Mato的文件管理(莫队算法+树状数组)
- json 数组转换为js数组
- LightOj1285 - Drawing Simple Polygon(连接多边形各点)
- jad 反编译 jar包
- scala伴生对象,apply()及单例
- JavaScript- The Good Parts Chapter 4
- 开心菜鸟系列学习笔记--------初探Nodejs(了解篇)
- 基于visual Studio2013解决算法导论之013基数排序
- 转:IT巨头纷纷“卡位” 智能语音成人机交互入口必争之地
- 嵌套for in循环组合cat方式文件中包含空格问题
- selenium 不同版本Driver
- Redis 总结精讲 看一篇成高手系统-4
- C# Dictionary<;TKey,TValue>;如何添加键重复的内容
- [cloud][sdn] openstack openflow opendaylight openvswitch
- JavaScript的setTimeout()和setInterval()
- Java内存泄露原因详解
热门文章
- JQuery-- 获取元素的宽高、获取浏览器的宽高和垂直滚动距离
- JavaScript--函数表达式与函数声明的区别
- 【转】MySQL的btree索引和hash索引的区别
- WCF ChannelFactory
- cocos2dx3.0项目创建流程
- MaxCompute问答整理之6月
- 解决eclipse不会自动弹出Console控制台的问题
- a configuration error occured during startup.please verify the preference field with the prompt:
- Java Annotation入门
- [linux]vmware中linux虚拟机扩容 标签: vmware虚拟机linux 2016-09-05 08:03 315人阅读 评