- 工信部備案號 滇ICP備05000110號-1
- 滇公安備案 滇53010302000111
- 增值電信業務經營許可證 B1.B2-20181647、滇B1.B2-20190004
- 云南互聯網協會理事單位
- 安全聯盟認證網站身份V標記
- 域名注冊服務機構許可:滇D3-20230001
- 代理域名注冊服務機構:新網數碼
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來建表。
售前咨詢
售后咨詢
備案咨詢
二維碼
TOP