https://www.cnblogs.com/hellojesson/p/6025548.html 環(huán)境描述: MySQL 5.7.13 問(wèn)題描述: 當(dāng)前users_info表的role_id 在創(chuàng)建表的時(shí)候,,沒(méi)有設(shè)置默認(rèn)值,數(shù)據(jù)庫(kù)自動(dòng)設(shè)置為空,。 原先建表語(yǔ)句:role_id字段,。 修改字段默認(rèn)值:role_id默認(rèn)值設(shè)置為:1 mysql> alter table users_info alter column role_id set default 1; 測(cè)試: mysql> insert into users_info(username,passwd,phone_number,email) values('趙六',md5('123456'),'13700007777','[email protected]'); 修改字段默認(rèn)值語(yǔ)法: alter table 表名 alter column 字段名 drop default; (若本身存在默認(rèn)值,則先刪除) alter table 表名 alter column 字段名 set default 默認(rèn)值;(若本身不存在則可以直接設(shè)定) 測(cè)試代碼: --由于users_info表創(chuàng)建的時(shí)候,,添加了外鍵約束,,所以,小伙伴們測(cè)試的話(huà),,建議先建個(gè)角色表roles CREATE TABLE roles( role_id smallint unsigned primary key auto_increment, #角色id role_name varchar(20) not null unique #角色名稱(chēng) )ENGINE=InnoDB DEFAULT CHARSET=utf8; -- 創(chuàng)建用戶(hù)信息表 role_id字段沒(méi)設(shè)默認(rèn)值 CREATE TABLE `users_info` ( `user_id` smallint(5) unsigned NOT NULL AUTO_INCREMENT, `username` varchar(20) NOT NULL, `passwd` char(60) NOT NULL, `phone_number` varchar(11) DEFAULT NULL, `email` varchar(60) DEFAULT NULL, `role_id` smallint(5) unsigned, `create_time` datetime NOT NULL default now(), PRIMARY KEY (`user_id`), UNIQUE KEY `username` (`username`), KEY `fk_role_id` (`role_id`), CONSTRAINT `fk_role_id` FOREIGN KEY (`role_id`) REFERENCES `roles` (`role_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- 插入幾條測(cè)試數(shù)據(jù) insert into roles(role_name) values('初始注冊(cè)角色'); insert into users(username,passwd,phone_number,email) values('張三',md5('123456'),'13700008888','[email protected]') |
|
來(lái)自: jasonbetter > 《mysql》