本文摘自PHP中文网,作者(*-*)浩,侵删。
本篇文章将介绍default 默认约束,如何使用和改动后的效果。推荐课程:MySQL教程。
常用数据库约束:
default 默认约束;
not null:非空约束,指定某列不为NULL;
unique:唯一约束,指定某列和几列组合的数据不能重复;
primary key:主键约束,指定某列的数据非空、唯一、不能重复;
foreign key:外键,指定该列记录属于主表中的一条记录,参照另一条数据;
check:检查,指定一个表达式,用于检验指定数据;
1、default 定义列的默认值
当插入一个新行到表中时,没有给该列明确赋值,如果定义了列的默认值,将自动得到默认值;如果没有,则为(NULL)。
1 2 3 4 5 6 7 | -- 创建一张user表
CREATE TABLE `test`.`user`(
`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT 'id' ,
`name` VARCHAR(225) COMMENT '姓名' ,
`sex` TINYINT(1) DEFAULT 1 COMMENT '性别 1男 0女' ,
PRIMARY KEY (`id`)
) ENGINE=INNODB CHARSET=utf8 COLLATE=utf8_general_ci
|
给字段添加默认约束:
1 2 3 4 5 6 | 1.在创建表时:直接在字段类型的后面加上 DEFAULT(value),具体看创建user表时的sex字段;
2.在存在表的情况下添加:
使用sql语句 ALTER TABLE `user` MODIFY `sex` TINYINT(1) DEFAULT 1; 即可为添加 `sex` 字段添加默认约束;
使用sql语句 ALTER TABLE `user` MODIFY `name` VARCHAR(225)DEFAULT '小明' ; 即可为添加 `name` 字段添加默认约束;
tips:默认约束是不可以使用函数的,所以 ALTER TABLE `user` ADD COLUMN ` date ` DATETIME DEFAULT NOW() AFTER `sex`; 是不可行的。
|
移除默认约束:
1 2 3 | 移除默认约束和添加默认约束操作方式一样,都是修改表的字段;
ALTER TABLE `user` MODIFY `sex` TINYINT(1);
这样就移除了sex的默认约束。
|
现在我们插入一条数据:
1 2 3 4 5 6 7 8 9 | INSERT INTO `user`(`name`) VALUES( '小明' );
SELECT * FROM `user`;
结果:
-----------------------------------
id name sex
小明 1
-----------------------------------
|
当然我们也可以:
1 2 3 4 5 6 7 8 | INSERT INTO `user`(`name`,`sex`) VALUES( '小明' ,DEFAULT);
SELECT * FROM `user`;
结果:
---------------------------------
id name sex
小明 1
---------------------------------
|
如果你这样:
1 2 3 4 5 6 7 8 | INSERT INTO `user`(`sex`) VALUES(DEFAULT);
SELECT * FROM `user`;
结果:
-----------------------------------
id name sex
(NULL) 1
-----------------------------------
|
tips:在更新和查询都可以用DEFAULT来操作;
1 2 | -- 查询sex字段的默认值 SELECT DEFAULT(`sex`) FROM `user`;
-- 更新sex为默认值 UPDATE `user` SET `sex` = DEFAULT WHERE `id`= '1' ;
|
以上就是MySQL默认值约束怎么用的详细内容,更多文章请关注木庄网络博客!
相关阅读 >>
什么是dbms接口?浅谈dbms接口
mysql数据库怎么给表增加一个字段?
使用sql语句怎么删除表中一行数据?
mysql如何新建权限设置密码
mysql黑框怎么改密码?mysql黑窗口怎么改密码?
mysql怎么退出
mysql中逻辑查询处理的介绍(代码示例)
mysql为数据表及字段添加注释
mysql怎么取消外键限制(约束)?
mysql如何查询索引状态?
更多相关阅读请进入《mysql》频道 >>
机械工业出版社
本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。
转载请注明出处:木庄网络博客 » MySQL默认值约束怎么用