# --視圖:單表+多表
# create view my_v1 as
# select * from my_student;
# create view my_v2 as
# select * from my_student;
# create view my_v3 as
# select * from my_student as s
# left join my_class as c on s.c_id
# =c.id;--id修復
# --多表視圖
# create view my_v3 as
# select s.*,c.c_name,c.room
# from my_student as s
# left join my_class as c
# on s.c_id=c.id;
# --查看視圖創建語句
# show create view my_v3\G
# --視圖使用
# select * from my_v1;
# select * from my_v2;
# select * from my_v3;
# --修改視圖
# alter view my_v1 as
# select id,name,age,sex,height,
# c_id
# from my_student;
# --創建視圖
# create view my_v4 as select *
# from my_student;
# --刪除視圖
# drop view my_v4;
# --多表視圖插入數據
# insert into my_v3
# values(null,'bc2019006','張三豐','男',150,180,1,'Python1907','B407');
# 將學生表的學號字段設置成不允許為空
# alter table my_student modify
# number char(10) not null unique;
# --單表視圖插入數據:視圖不包括所有不允許為空的字段
# insert into my_v1
# values(null,'張三豐',150,'男',180,1);--失敗(學號不允許為空)
# --單表視圖插入數據
# insert into my_v2
# values(2,'Python1811','B410');
# --多表視圖刪除數據
# delete from my_v3 where id=1;
# --單表視圖刪除數據
# delete from my_v2 where id=4;
# --多表視圖更新數據
# update my_v3 set c_id=3 where id=5;
# --視圖:age字段限制更新
# create view my_v4 as
# select * from my_student where
# age>30 with check option;
# 表示視圖的數據來源都是年齡大于30歲,是由where age>30決定的
# --with check
# option決定通過視圖更新的時候,不能將已經的到的數據age>30的改成<30的
# --將視圖可以查到數據改成年齡小于30的
# update my_v4 set age=29 where id=3;
# --可以修改數據:可以改,但是視圖查不到
# update my_v4 set age=32 where id=2;
# --獲取所有班級中最高的一個學生
# create view my_v5 as
# select * from my_v5 group by c_id;
# select * from my_student group by c_id order by height desc;
# --指定算法為臨時表算法
# create algorithm=temptable view
# my_v6 as select * from my_student order by height desc;
# select * from my_v6 group by c_id;
# --查看MySQL的版本
# select @@version;
# --創建myisam表
# create table my_myisam(
# id int
# )charset utf8 engine=myisam;
# --向my_myisam表插入幾條記錄
# insert into my_myisam values(1),(2),(3);
# --單表數據備份
# select * into outfile
# 'D:/1907/web/student.txt'
# --還原數據
# load data infile
# 'D:/1907/web/student.txt'
# into table my_class
# --字段處理
# fields
# enclosed by '""'
# 數據使用雙引號包裹
# terminated by'|'
# 使用數顯分隔字段數據
# --行處理
# lines
# starting by 'START'
# --SQL備份
# mysqldump -uroot -p123456
# mydatabase my_student > D:/1907/web/student.sql
# --整庫備份
# mysqldump -uroot -p123456
# mydatabase my_student > D:/1907/web/student.sql
# --還原數據:mysql客戶端還原
# mysql -uroot -p123456 mydatabase < D:/1907/web/student/sql
# --SQL指令還原SQL備份
# source D:/1907/web/student.sql;