介绍
在这个项目中,你将学习如何在 MySQL 数据库中创建一个学生视图,并更新视图中的数据。
👀 预览
MySQL [edusys]> SELECT * FROM student WHERE ID = '70557';
+-------+---------+------+
| id | name | cred |
+-------+---------+------+
| 70557 | History | 0 |
+-------+---------+------+
1 row in set (0.001 sec)
🎯 任务
在这个项目中,你将学习:
- 如何基于现有表创建视图
- 如何更新视图中的数据
🏆 成果
完成这个项目后,你将能够:
- 理解数据库视图的概念以及如何创建视图
- 使用 SQL 更新语句修改视图中的数据
- 应用这些技能来管理和维护数据库中的数据
创建学生视图
在这一步中,你将学习如何基于学生表创建一个学生视图。
启动 MySQL:
sudo /etc/init.d/mysql start登录到 MySQL 终端:
mysql -uroot将
edusys.sql脚本中的数据导入到 MySQL:SOURCE ~/project/edusys.sql在
~/project目录中创建一个名为updateView.sql的新文件。在文件中添加代码以创建一个名为
student_view的视图,该视图包含以下字段:学生表字段 视图字段 ID id name name tot_cred cred 代码应如下所示:
USE edusys CREATE VIEW IF NOT EXISTS student_view AS SELECT ID AS id, name AS name, tot_cred AS cred FROM student;这将创建一个名为
student_view的视图,该视图从student表中选择ID、name和tot_cred列,并分别将它们重命名为id、name和cred。
更新学生视图
在这一步中,你将学习如何更新 student_view 视图中的数据。
打开
updateView.sql文件,并在文件中添加代码,以便在student_view视图中,将id为'70557'的条目的name字段更新为'History':UPDATE student_view SET name = 'History' WHERE id = '70557';这会将
student_view视图中id为'70557'的行的name字段更新为'History'。最终代码如下:
USE edusys -- 创建一个具有如下表中所示相应字段的 student_view 表 CREATE VIEW IF NOT EXISTS student_view AS SELECT ID AS id, name AS name, tot_cred AS cred FROM student; -- 在 student_view 视图中,将 id 为 70557 的条目的 name 字段更新为 History UPDATE student_view SET name = 'History' WHERE id = '70557';在 MySQL 终端中运行 SQL 脚本。
SOURCE ~/project/updateView.sql通过从
student表中选择ID为'70557'的数据来验证更新:SELECT * FROM student WHERE ID = '70557';输出应显示更新后的
name字段:+-------+---------+------+ | id | name | cred | +-------+---------+------+ | 70557 | History | 0 | +-------+---------+------+ 1 row in set (0.001 sec)
恭喜!你已成功创建一个学生视图并更新了视图中的数据。
总结
恭喜!你已完成这个项目。你可以在 LabEx 中练习更多实验来提升你的技能。



