mysql部分初级命令总结

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/CSDNgaoqingrui/article/details/81058126
                                                     mysql部分初级命令笔记

1 查看所有数据库 show databases;
2 使用数据库  use 数据库名;
3 查看当前使用的数据库 select database();
4 创建数据库 create database 数据库名 CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
5 删除数据库 drop database 数据库名;
6 查看当前数据库中所有表 show tables;
7 查看表结构 desc 表名;
8 修改表-添加字段 alter table 表名 add 列名 类型;
9 修改表-修改字段:重命名版 alter table 表名 change 原名 新名 类型及约束;
10 修改表-修改字段:不重命名版 alter table 表名 modify 列名 类型及约束;
11 修改表-删除字段 alter table 表名 drop 列名;
12 删除表 drop table 表名;
13 查看表的创建语句 show create table 表名;
14 全列插入:值的顺序与表中字段的顺序对应 insert into 表名 values(...)
15 部分列插入:值的顺序与给出的列顺序对应 insert into 表名(列1,...) values(值1,...)
16 全列多行插入:值的顺序与给出的列顺序对应 insert into 表名 values(...),(...)...;
17 备份 mysqldump –uroot –p 数据库名 > python.sql;   # 按提示输入mysql的密码
18 恢复
连接mysql,创建新的数据库,退出连接,执行如下命令:
mysql -uroot –p 新数据库名 < python.sql   # 根据提示输入mysql密码
19

三范式

* 第一范式(1NF):强调的是列的原子性,即列不能够再分成其他几列。
* 第二范式(2NF):首先是 1NF,另外包含两部分内容,一是表必须有一个主键
* 第三范式(3NF):首先是 2NF,另外非主键列必须直接依赖于主键,不能存在传递依赖。
20   聚合函数 最大值 max(列)表示求此列的最大值
21 最小值 min(列)表示求此列的最小值
22 求和 sum(列)表示求此列的和
23 求平均数 avg(列)表示求此列的平均值
24 group by + group_concat() select gender,group_concat(age) from students group by gender;
25 group by + having select gender,count(*) from students group by gender having count(*)>2;
26 分页 select * from 表名 limit start,count
27 标量子查询 select * from students where age > (select avg(age) from students);
28 列级子查询 select name from classes where id in (select cls_id from students);
29 行级子查询 select * from students where (height,age) = (select max(height),max(age) from students);
30 查看版本 select version();
31 显示当前时间 select now();
32 定义视图,一般以V开头 create view 试图名称 as select语句;
33 查看视图 1.点击视图, 2.show tables;
34 删除视图 drop view 视图名称;
35 视图的作用
1. 提高了重用性,就像一个函数 2. 对数据库重构,却不影响程序的运行
3. 提高了安全性能,可以对不同的用户 4. 让数据更加清晰
36 事务四大特性
原子性:一个事务必须被视为一个不可分割的最小工作单元,整个事务中的所有操作要么全部提交成功,要么全部失败回滚,对于一个事务来说,不可能只执行其中的一部分操作,这就是事务的原子性。
一致性:数据库总是从一个一致性的状态转换到另一个一致性的状态。
隔离性:一个事务所做的修改在最终提交以前,对其他事务是不可见的。
持久性:一旦事务提交,则其所做的修改会永久保存到数据库。
37 开启事务命令
1.begin; 2. start transaction; 
开启事务后执行修改命令,变更会维护到本地缓存中,而不维护到物理表中
38 提交事务 commit; 将缓存中的数据变更维护到物理表中
39 回滚事务 rollback; 放弃缓存中变更的数据
40 事务总结
1. 修改数据的命令会自动的触发事务,包括insert、update、delete
2. 而在SQL语句中有手动开启事务的原因是:可以进行多次数据的修改,如果成功一起成功,否则一起会滚到之前的数据
  查看索引 show index from 表名;
  创建索引
create index 索引名称 on 表名(字段名称(长度))
* 如果指定字段是字符串,需要指定长度,建议长度与定义字段时的长度一致
* 字段类型如果不是字符串,可以不填写长度部分
  删除索引 drop index 索引名称 on 表名;
  开启时间监测 set profiling=1;
  查看执行的时间 show profiles;
  BTREE:平衡树
   

猜你喜欢

转载自blog.csdn.net/CSDNgaoqingrui/article/details/81058126