MySQL(3~5章总结)
一、添加主、外键
1.添加主键
语法:ALTER TABLE 表名 ADD CONSTRANINT 主键名 FRIMARY KEY 表名(主键字段);
2.添加外键
语法:ALTER TABLE 表名 ADD CONSTRAINT 外键名 FOREIGN KEY(外键字段) REFERENCES 关联表名(关联字段);
二、添加、删除、更新等语句
1.添加单条数据
语法:INSERT INTO 表名 [(字段名列表)] VALUES (值列表);
2.添加多条数据
语法:INSERT INTO 新表(字段名列表) VALUES(值列表1),(值列表2),……,(值列表n);
3.更新数据
语法:UPDATE 表名 SET 字段1=值1,字段2=值2,…,字段n=值n [WHERE 条件];
4.删除数据
语法:DELETE FROM 表名 [WHERE条件];
TRUNCATE TABLE 表名;
ps:TRUNCATE语句删除后将重置自增列,表结构及其字段、约束、索引保持不变,执行速度比DELETE语句快
三、子查询
定义:子查询是一个嵌套在 SELECT、INSERT、UPDATE 或 DELETE 语句或其他子查询中的查询
语法:SELECT … FROM 表1 WHERE 字段1 比较运算符(子查询)
ps:当子查询返回不止1个值时,比较运算符采用 IN 子查询
四、常用函数
五、EXISTS子查询
语法:SELECT …… FROM 表名 WHERE EXISTS(子查询);
子查询有返回结果:EXISTS子查询结果返回true
子查询无返回结果:EXISTS子查询结果为false,外层查询不执行
ps:子查询顺序是先子后父
六、事务
1.含义:将多条sql语句当做一个整体看待,要么都执行,要么都不执行
2.四大特性(ACID):
a.原子性:事务是一个整体,不可分割
b.一致性:转账前后两个账户的总金额是保持恒定的
c.隔离性:多个事务之间相互独立,互不干预
d.持久性:事务提交成功后结果会正式保存到数据库中
3.关键字:
a.开启事务:begin/start transaction
b.提交事务:commit
c.回滚事务:rollback
七、视图
1.作用:主要解决多权限身份问题,保护敏感的字段
2.含义:是一张虚拟表,只负责展示数据,数据依然保存在原表当中
3.注意事项:
a.单表视图可以进行增删改查,并且数据会保存到原表当中
b.复合视图只可以进行查询操作
八、索引
1.作用:提高查询速度
2.添加索引的标准:经常操作+字节长度小+数据没有大量重复 ( 性别 )+并不是越多越好
上一篇: gradle多项目构建
下一篇: MySql总结