1.基础知识
1.1一条数据存储的过程
1.2标识符命名规则
1.3 MySQL中的数据类型
2.创建和管理数据库
2.1创建数据库
2.2使用数据库
2.3修改数据库
2.4删除数据库
3.创建表
3.1创建方式1:白手起家
3.2创建方式2:基于当前表
3.3查看数据表结构
4.修改表----》ALTER TABLE
4.1追加一个列(字段)
4.2修改一个列(字段):数据类型,长度,默认值
4.3重命名一个列
4.4删除一个列
5.重命名表
6.删除表
不光将表结构删除掉,同时表中的数据也删除掉,释放表空间
7.清空表
清空表,表示清空表中的所有数据,但是表结构保留。
8.DCL中COMMIT与ROLLBACK的使用
问题:
一张表,表中的数据全部都不想要了,问此时是应该使用TRUNCATE TABLE还是使用DELETE FROM? why?
首先这两个操作都可以实现表数据的全部删除。TRUNCATE TABLE不能实现回滚,使用DELETE FROM可以实现回滚。以回滚和不能回滚为代表就是该操作后台占用资源的多少;
TRUNCATE TABLE每一次清除表数据后根本不考虑是否要进行回滚,该操作默认就是不能回滚的,所以在数据删除的同时不会进行备份,所以使用的系统资源和事务日志资源比较少;DELETE FROM一边删除,一边还得考虑回滚,数据删除的同时要进行备份,以防用户进行回滚操作,所以使用的系统资源和事务日志资源比较多。所以从资源使用上来说TRUNCATE TABLE是优于DELETE FROM的,更加节省资源。但是实际开发场景中使用TRUNCATE TABLE是极有可能造成事故的,在一张表没有做备份的情况下使用TRUNCATE TABLE是真的就没有的,所以和造成事故相比,占用点资源是小事。所以实际开发中使用DELETE FROM 更为稳妥。
9.内容拓展
拓展1:阿里巴巴《Java开发手册》之MySQL数据库
拓展2:如何理解清空表、删除表等操作需谨慎?!
拓展3:MySQL8新特性一DDL的原子化
练习
练习1:
由于departments表不在数据库test01_office里面,所以需要指明表的来源
练习2:
练习3: