MySQL 데이터베이스보기 강화 연습
머리말
이 환경은 Centos 7.8 시스템을 기반으로
특정 구성 을 위해 MySQL-5.7.14를 빌드 합니다. MySQL-5.7.14 환경 구성을 참조하십시오.
步骤1:创建学生表stu,插入3条记录。
CREATE TABLE stu
(
s_id INT PRIMARY KEY,
s_name VARCHAR(20),
addr VARCHAR(50),
tel VARCHAR(50)
);
INSERT INTO stu
VALUES(1,'XiaoWang','Henan','0371-12345678'),
(2,'XiaoLi','Hebei','13889072345'),
(3,'XiaoTian','Henan','0371-12345670');
步骤2:创建报名表sign,插入3条记录。
CREATE TABLE sign
(
s_id INT PRIMARY KEY,
s_name VARCHAR(20),
s_sch VARCHAR(50),
s_sign_sch VARCHAR(50)
);
INSERT INTO sign
VALUES(1,'XiaoWang','Middle School1','Peking University'),
(2,'XiaoLi','Middle School2','Tsinghua University'),
(3,'XiaoTian','Middle School3','Tsinghua University');
步骤3:创建成绩表stu_mark,插入3条记录。
CREATE TABLE stu_mark (s_id INT PRIMARY KEY ,s_name VARCHAR(20) ,mark int );
INSERT INTO stu_mark VALUES(1,'XiaoWang',80),(2,'XiaoLi',71),(3,'XiaoTian',70);
步骤4:创建考上Peking University的学生的视图
mysql> create view Peking_stu(学生,学校)
-> as select s_name,s_sign_sch from sign
-> where s_sign_sch='Peking University';
步骤5:创建考上Tsinghua University的学生的视图
mysql> create view Tsinghua_stu(学生,学校)
-> as select s_name,s_sign_sch from sign
-> where s_sign_sch='Tsinghua University';
步骤6:XiaoTian的成绩在录入的时候录入错误多录了50分,对其录入成绩进行更正。
创建视图
mysql> create view stu_view_mark
-> as select * from stu_mark;
修改成绩
mysql> update stu_mark
-> set mark=20
-> where s_name='xiaotian';
步骤7:查看更新过后视图和表的情况。
mysql> select * from stu_mark;
+------+----------+------+
| s_id | s_name | mark |
+------+----------+------+
| 1 | XiaoWang | 80 |
| 2 | XiaoLi | 71 |
| 3 | XiaoTian | 20 |
+------+----------+------+
3 rows in set (0.00 sec)
mysql> select * from stu_view_mark;
+------+----------+------+
| s_id | s_name | mark |
+------+----------+------+
| 1 | XiaoWang | 80 |
| 2 | XiaoLi | 71 |
| 3 | XiaoTian | 20 |
+------+----------+------+
3 rows in set (0.00 sec)
步骤8:查看视图的创建信息。
mysql> show create view Peking_stu\G
mysql> show create view Tsinghua_stu\G
mysql> show create view stu_view_mark\G
步骤9:删除创建的视图。
mysql> drop view Peking_stu;
mysql> drop view Tsinghua_stu;
mysql> drop view stu_view_mark;