这篇具有很好参考价值的文章主要介绍了15天学习MySQL计划(常用函数/约束)第三天。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。
1.函数
1.1字符串函数
函数 |
功能 |
concat(s1,s2) |
字符串拼接,将s1,s2拼接成一个字符串 |
lower(str) |
将字符串str全部转为小写 |
upper(str) |
将字符串str全部转为大写 |
lpad(str,n,pad) |
左填充,用字符串pad对str的左边进行填充,达到N个字符串长度 |
rpad(str,n,pad) |
右填充,用字符串pad对str的右边进行填充,达到N个字符串长度 |
trim(str) |
去除字符串头部和尾部的空格 |
substring(str,start,len) |
返回从字符串str从start位置起的len个长度的字符串 |
1.2数值函数
函数 |
功能 |
ceil(x) |
向上取整 |
floor(x) |
向下取整 |
mod(x,y) |
返回x/y的余 |
rand() |
返回0~1内的随机数 |
round(x,y) |
求参数x的四舍五入的值,保留y位小数 |
1.3日期函数
函数 |
功能 |
curdate() |
返回当前日期 |
curtime() |
返回当前时间 |
now() |
返回当前日期和时间 |
year(date) |
获取指定date的年份 |
month(date) |
获取指定date的月份 |
day(date) |
获取指定date的日期 |
date_add(date,interval exper type) |
返回一个日期/时间值加上一个时间间隔expr后的时间值 |
datediff(date1,date2) |
返回起始时间date1和结束时间date2之间的天数 |
1.4流程函数
函数 |
功能 |
if (value,t,f) |
如果value为true,则返回t,否则返回f |
ifnull(value1,value2) |
如果value1不为空,返回value1,否则分会value2 |
case when [vall] then [resl] … else [default] end |
如果vall为true,返回res1…否则返回default默认值 |
case [expr] when [vall] then [res1] …else [default] end |
如果expr的值等于vall,返回res1…否则返回default默认值 |
2.约束
2.1概述
1.概念:约束是作用于表中字段上的规则,用于限制存储在表中的数据
2.目的:保证数据库中的数据的正确,有效性和完整性
3.分类文章来源:https://www.toymoban.com/news/detail-420325.html
约束 |
描述 |
关键字 |
非空约束 |
限制该字段的数据不能为null |
not null |
唯一约束 |
保证该字段的所有数据都是唯一,不重复 |
unique |
主键约束 |
主键是一行数据的唯一标识,要求非空唯一 |
primary key |
默认约束 |
保存数据时,如果未指定该字段的值,则采用默认值 |
default |
检查约束(mysql8.0.16以后支持) |
保证字段值满足某一个条件 |
check |
外键约束 |
用来让两张表的数据之间建立连接,保证数据的一致性和完整性 |
foreign key references 表名(列名) |
递增 |
用于数字类型,适用于序号 |
auto_increment |
2.2外键约束
1.添加外键
create table 表名(
字段名 数据类型,
[constraint] [外键名称] foreign key (外键字段名) references 主表(主列名);
)
2.为创建好的表添加外键
alter table 表名 add constraint 外键名 foreign key(外键字段名) references 主表(主表列名);
3.删除外键
alter table 表名 drop foreign key 外键名;
2.3外键约束
行为 |
说明 |
no action |
当在父表中删除/更新对应记录时,首先检查该记录是否有对应外键,如果有则不允许删除/更新。(与restrict一致) |
restrict |
当在父表中删除/更新对应记录时,首先检查该记录是否有对应外键,如果有则不允许删除/更新。(与no action一致) |
cascde |
当在父表中删除/更新对应记录时,首先检查该记录是否有对应外键,如果有,则也删除/更新外键在子表中的记录 |
set null |
当在父表中删除对应记录时,首先检查该记录是否有对应外键,如果有则设置子表中该外键值为null(这就要求该外键允许取null) |
set default |
父表有变更时,子表将外键列设置为一个默认的值(innodb不支持) |
语法:文章来源地址https://www.toymoban.com/news/detail-420325.html
alter table 表名 add constraint 外键名称 foreign key (外键字段) references 主表名(主表字段名) on update cascade on delete cascde;
到了这里,关于15天学习MySQL计划(常用函数/约束)第三天的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!