1. mysql -u root -p 123456;   # 进行数据库的登录,cmd进入mysql的安装bin路径下

2. show databases;  # 查看当前的数据库

show databases;

3. use oldboydb;  # 使用oldboydb 数据库,用于进行数据库的切换

use oldboydb;

4.show tables; 查看当前数据库下的表格

show tables;

5.desc student; 查看表格的数据结构

desc student;

6. select * from student; 查看表格的数据

select * from student;

7.create user 'alex'@'localhost' identified by 'alex123'  # 进行用户的创建

create user 'alex'@'localhost' identified by 'alex123';

8. grant all privileges on oldboydb.* to 'alex@localhost'  # oldboydb数据库下的将所有的私有权限都授权给本地的alex用户

grant all privileges on oldboydb.* to 'alex'@'localhost';

9. show grants for 'alex'@'locahost'  # 查看用户的权限

show grants for 'alex'@'localhost';

10. show columns from stundent # 查看student的表结构

show columns from student;

11. create database testdb charset utf8  # 创建testdb数据库

create database testdb charset utf8;

12. drop database testdb; # 将testdb数据库进行删除

drop database testdb;

13. show index from student; # 查看数据库的主键

show index from oldboydb;

14. 创建一个student表  # create table student(stu_id int not null auto_increment, name char(32) not null, age int not null, register_data date not null, primary key(stu_id));   # not null 不可以空,char(32) , int, date 表示类型, auto_increment表示自增, primary_key(stu_id)表示主键 

create table student_1(
    -> stu_id int not null auto_increment,
    -> name char(32) not null,
    -> age int not null,
    -> register_data date not null,
    -> primary key(stu_id));

15. insert into student_1 (name, age, register_data) values ('alex', '22', '2015-02-06')  # 插入一条数据,name=alex, age=22, register_data=2015-02-06

insert into student_1 (name, age, register_data) values ('alex', '22', '2016-02-03');

16. select * from student_1 limit 1 offset 2; 从数据第二条开始,向后数一条,即第三条数据

select * from student_1 limit 1 offset 2;

17. select * from student_1 where id = 2;  条件获取,获取id=2的数据

select * from student where id = 2;

 18. select * from student_1 where register_data like '2016-02%';  # 进行模糊匹配,找出注册时间为2016-02月的数据

select * from student_1 where register_data like '2016-02%';

19. update student_1 set name = 'chengronghua', age = 33 where stu_id = 4;  # 进行数据内容的修改

update student_1 set name='chengronghua', age=33 where stu_id = 4;

20. delete from student_1 where name = 'chengronghua'  # 对查找出的记录进行删除

 delete from student_1 where name = 'chengronghua';

21. select * from student order by stu_id desc; # 根据stu_id 进行降序desc,默认是升序

select * from student_1 order by id desc;

22. select name count(*) as stu_num group by name # 对名字进行统计,使用stu_num 作为索引值

select name, count(*) as stu_num from student_1 group by name;

23. select name, sum(age) from student_1 group by name; 对名字进行分类,统计单个名字的年龄之和

select name, sum(age) from student_1 group by name;

24. select name, sum(age) from student_1 group by name with rollup; 对名字进行分类,统计每个名字的年龄之和,同时将年龄进行总和 

 select name, sum(age) from student_1 group by name with rollup;

25. select coalesce(name, 'Total Age'), sum(age) from student group by name with rollup;  # 对名字进行分类,统计每个名字的年龄之和,并求年龄总和,对特征Total Age

select coalesce(name, 'Total Age'), sum(age) from student_1 group by name with rollup;

26. alter table student_1 add sex enum('M', 'F');   # 在student_1 添加sex 属性,enum('M', 'F')构造选择属性

alter table student_1 add sex enum('M', 'F');
insert into student_1 (name, age, register_data, sex) values('Wangseng', 22, '2016-02-03', 'M') # 插入数据

27. alter table student modify name char(32);  # 将名字的属性进行修改 

alter table student modify sex char(32);

alter table study_record modify id int(11) primary key; 将id设置为主键

28. update student_1 set sex = 'M' where sex is null;  # 如果性别为空,默认为男性

update student_1 set sex = 'M' where sex is null;

29. alter table student_1 change sex gender char(32) not null default 'X';  对属性的名字进行修改,同时重新定义其属性和默认值

alter table student_1 change gender sex char(32) not null default 'X';

 

30. create table study_record(id int not null, day int not null, status char not null, stu_id int not null, stu_id int not null, key fk_student_key (stu_id), constraint fk_student_key foreign key (stu_id) references student(id));   # 构造study_record数据库,将stu_id 与学生的id做外键关联

 create table study_record(
    -> id int not null,
    -> day int not null,
    -> status char not null,
    -> stu_id int not null,
    -> key fk_student_key (stu_id),
    -> constraint fk_student_key foreign key (stu_id) references student(id));

 31. show create table study_record;   # 查看创建study_record时的命令

show create table study_record;

32. delete from study_record where id = 3;  # 删除数据的记录

delete from study_record where id = 3;

33. select * from student inner join student_1 on student.name = student_1.name  # 找出两个数据集名字的交集

select * from student inner join student_1 on student.name = student_1.name;

34. select * from student left join student_1 on student.name = student_1.name # 找出student对应student_1 的 差集

select * from student left join student_1 on student.name = student_1.name;

35. select * from student right join student_1 on student.name = student_1.name # 找出student_1 对应的student 的差集

select * from student right join student_1 on student.name = student_1.name;

36. select * from student left join student_1 on student.name = student_1.name union  select * from student right join student_1 on student.name = student_1.name;  求两个数据集对应的交集

select * from student left join student_1 on student.name = student_1.name union  select * from student right join student_1 on student.name = student_1.name;

 

37. 使用begin 开启事务, 使用rollback 进行回滚, 使用commit 进行事务的传递

# 进行数据的回滚操作
begin; insert into student (name, register_data, sex) values(
'Jackes', '2016-02-03', 'M'); rollback; # 进行数据的提交 beigin; insert into student (name, register_data, sex) values('Jackes', '2016-02-03', 'M'); commit;

38. show index from student # 查看student里面的索引

show index from student 

39. create index index_name on student(name)  # 对名字创建主键

create index index_name on student(name);

40. drop index index_name on student;   #  删除name主键

drop index index_name on student;

 

posted on 2019-09-09 19:41  python我的最爱  阅读(314)  评论(0编辑  收藏  举报