美文网首页
数据库第四天

数据库第四天

作者: lyf_god | 来源:发表于2019-07-15 14:21 被阅读0次

    主键:primary key,主要的键,一张表只能有一个字段可以使用对应的键,用来唯一的约束该字段里面的数据,不能重复,这种称之为主键

    增加主键:

    方案一:在创建表的时候,直接在字段之后,跟primary key关键字(主键本身不允许为空)

    方案二:在创建表的时候,在所有的字段之后,使用primary key(主键字段列表)来创建主键,如果有多个字段作为主键,可以是复合主键

    方案三:当表已经创建好之后,额外追加主键,可以通过修改表字段属性,也可以直接追加

    alter table 表名 add primary key(字段列表);

    主键约束:主键对应的字段中的数据不允许重复,一旦重复,数据操作(增和改)失败

    更新主键 & 删除主键

    alter table 表名 drop primary key;

    主键分类:业务主键、逻辑主键

    create table my_student(

    id int primary key auto_increment comment '逻辑主键:自增长',

    number char(10) not null comment '学号',

    name varchar(10) not null

    )

    自动增长:auto_increment,当对应的字段,不给值,或给默认值、或给NULL值,会自动的被系统触发,系统会从当前字段中已有的最大值基础上,再进行+1操作,得到一个新的不同的数据

    特点:

    任何一个字段要做自增长,前提必须本身就是一个索引

    自增长字段必须是数字,而且是整型

    一张表最多只能有一个自增长

    修改自增长:alter table 表名 auto_increment=值;

    查看自增长对应的变量:show variables like 'auto_increment%';

    删除自增长:alter table 表名 modify 字段 类型;

    唯一键(unique key)

    默认允许自动为空,而且可以多个为空

    增加唯一键

    方案一:在创建表的时候,字段之后直接跟unique / unique key

    方案二:在所有的字段之后增加unique key(字段列表);

    方案三:在创建表之后增加唯一键

    select 选项:select对查出来的结果的处理方式

    all:默认的,保留所有的结果

    distinct:去重,查出来的结果,将重复给去除

    字段别名

    字段名 [as] 别名;

    数据源:单表数据源、多表数据源、查询语句

    单表数据源:select * from 表名;

    多表数据源:select * from 表名1,表名2, ...;

    子查询:select * from (select 语句) as 别名;

    where子句:返回结果0或1,0代表false,1代表true

    判断条件

    比较运算符:>、<、>=、<=、!=、<>、=、like、between、and、in/not in

    逻辑运算符:&&(and)、||(or)、!(not)

    group by子句

    基本语法:group by 字段名 [asc|desc];

    统计函数:

    count():统计分组后的记录数,每一组有多少记录

    max():统计每组中最大的值

    min():统计最小值

    avg():统计平均值

    sum():统计和

    limit子句

    方案一:只用来限制长度,即数据量:limit 数据量;

    方案二:限制起始位置,限制数量:limit 起始位置,长度;

    limit offset,length;

    length:每页显示的数据量,基本不变

    offset = (页码-1)*每页显示量

    连接查询(join)分类:内连接、外连接、自然连接、交叉连接

    使用方式:左表 join 右表

    交叉连接(cross join)

    基本语法:左表 cross join 右表; -- 等价于:from 左表,右表;

    内连接([inner] join)

    基本语法:左表 [inner] join 右表 on 左表.字段=右表.字段;

    on表示连接条件

    增加外键

    创建表的时候增加外键:在所有的表字段之后,使用foreign key(外键字段) references 外部表(主键字段)

    在新增表之后增加外键:修改表结构,使用alter table 表名 add [constraint 外键名字] foreign key(外键字段) references 父表(主键字段);

    修改外键&删除外键

    alter table 表名 drop foreign key 外键名;

    外键条件

    外键要存在,首先必须保证表的存储引擎是innodb

    列类型必须与父表的主键类型一致

    一张表中的外键名字不能重复

    增加外键的字段数据已经存在,必须保证数据与父表主键要求对应

    外键约束

    有三种约束模式

    district:严格模式(默认的)

    cascade:级联模式

    set null:置空模式

    语法:foreign key(外键字段) references 父表(主键字段) on delete 模式 on update 模式;

    相关文章

      网友评论

          本文标题:数据库第四天

          本文链接:https://www.haomeiwen.com/subject/zidnkctx.html