MySQL零基础学习Day3——函数和约束
一.函数
1.含义
函数是指一段可以直接被另一端程序调用的程序或代码
2.字符串函数
注:SUBSTRING的start索引值是从1开始,而不是从0开始;pad代表用什么来进行填充
3.数值函数
注:取整只要小数位不是0,则取整
案例:通过数据库的函数,生成一个六位数的随机验证码select lpad(round(rand()*1000000,0),6,"0");
4.日期函数
-- 往后推测时间,比如如下往后推70年select date_add(now(),INTERVAL 70 year)-- type指的是时间单位
5.流程控制函数
需求:查询表中的员工姓名和工作地址(北京、上海——一线;其他——二线)
selectname,case workaddress when "北京" then "一线城市" when "上海" then "一线城市"else "二线城市" end
from emp;
二.约束
1.概述
概念:约束时作用于表中字段上的规则,用于限制存储在表中的数据
目的:保证数据库中数据的正确、有效性和完整性
2.约束演示
creat table user( -- 这边后面都省略asid int primary key auto_increment comment "主键", -- auto_increment代表自增 name varchar(10) not null unique comment "姓名",age int check (age>0 && age <=120)comment "年龄",status char(1) default "1" comment "状态",gender char(1) comment "性别"
)comment "用户表";
3.外键约束
概念:外键是用来让两张表的数据之间建立连接,从而保证数据的一致性和完整性
注:前两个为默认行为,即如果你要删除父表中的数据,但是有子表中的数据在关联,此时不允许删除;最后一个不常用,所以要掌握CASCADE和SET NULL即可。
CASCADE:如果在父表中有对应的外键,则删除和更新操作会影响子表
SET NULL:如果在父表中有对应的外键,则删除会将子表中外键值为null