《《数据库原理与应用》教案.doc》由会员分享,可在线阅读,更多相关《《数据库原理与应用》教案.doc(40页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、数据库原理与应用教案课程名称:数据库原理与应用主讲教师:授课对象:授课时间:授课地点:30教 案(首页)教案编写时间:课程名称数据库原理与应用课程代码总学时: 64学时讲授: 34学时实验: 30学时其他: 0 学时学分课程类别通识教育课( ) 专业基础课( ) 专业课( )任意选修课( ) 实践课 ( ) 其他 ( )授课对象教材:数据库原理与应用(基于MySQL),赵明渊,清华大学出版社,2022年1月主要参考资料: 教学目的、要求:教学目的:本课程以数据库原理为基础,以Oracle公司最新推出的MySQL8.0作为平台,内容包括:数据库概论、关系数据库系统模型、MySQL 的安装和运行、
2、MySQL 数据库和表、表数据操作、数据查询、视图和索引、数据完整性、MySQL语言、存储过程和存储函数、触发器和事件、安全管理、备份和恢复、事务和锁、关系数据库设计理论、数据库设计。学生将对数据库技术的基本概念、原理、方法和技术有较深刻的理解,掌握SQL语言查询和编程的基本技术,掌握数据库系统安装、配置、管理和维护的基本技能,具备数据库设计能力和SQL语言编程能力。1. 掌握数据库技术的基本概念、原理、方法和技术。2. 掌握数据查询和编程的基本技术,具备编写MySQL查询语句的能力和数据库语言编程的能力。3. 掌握数据库系统安装、配置和数据库管理和维护的基本技能。4. 掌握设计数据库的基本方
3、法,具备数据库设计能力。5. 了解数据库技术的最新发展。对课程教学环节的要求:通过本课程的课堂教学、课堂讨论和作业、验证性实验和设计性实验,培养学生掌握数据库理论知识和MySQL数据库管理、操作,具备数据库设计能力和SQL语言编程能力。1在掌握数据库基本原理和MySQL基本知识的基础上,突出主要知识点,并结合应用实例,以能力培养为主线。2通过课堂讨论和作业,学以致用,使学生逐步掌握数据库基本原理和MySQL命令以及SQL语句,提高学生学习兴趣。3通过验证性实验,培养学生调试题目给出的SQL语句的代码的能力,把理论知识与上机实践相结合。4通过设计性实验,培养学生独立设计、编写和调试SQL语句的代
4、码的能力,引导学生创新和创意。教学重点、难点:教学重点:关系模式规范化、数据库设计、数据查询、数据库编程技术(包括存储过程、存储函数、触发器、事件)。教学难点:使学生具备关系模式规范化的能力、数据库设计能力、编写MySQL查询语句的能力和数据库语言编程的能力第1章 数据库概论(2学时)一、教学目的:【了解】:数据管理技术的发展;大数据的基本知识;【理解】:数据库、数据库管理系统和数据库系统的概念;数据库系统结构、三级模式和两级级映像;数据模型的概念、数据模型的分类和数据模型的组成要素;【掌握】:概念模型的概念,实体之间的联系,实体-联系方法和E-R图,具备根据有关信息设计E-R图的能力;逻辑模
5、型的概念,逻辑模型中的层次模型、网状模型和关系模型,关系模型是应用最广泛、最重要的一种逻辑模型。二、教学重点:概念模型的概念,实体之间的联系,实体-联系方法和E-R图。三、教学难点:教学难点是具备根据有关信息设计E-R图的能力。四、教学进程(含教学内容、教学方法、 辅助手段、师生互动、时间分配、板书设计、作业布置等):教学内容:本章首先介绍数据库的基本概念,然后介绍数据模型的概念、概念模型的概念和逻辑模型的概念,着重介绍实体之间的联系,实体-联系方法和E-R图,接着介绍数据库系统结构和大数据的基本知识。通过本章的学习,可以学习数据库系统结构和大数据的基本知识,掌握数据库的基本概念、数据模型的概
6、念、概念模型的概念和逻辑模型的概念,培养根据有关信息设计E-R图的能力。教学过程设计:问题导向、新课导入、案例教学、课堂讨论、作业讲评。教学方法:以多媒体讲授和板书为主,并结合提问、设问、讨论等方法。内容提要:1.1 数据库的基本概念1.1.1 数据库1.1.2 数据库管理系统1.1.3 数据库系统1.1.4 数据管理技术的发展1.2 数据模型1.2.1 数据模型概述1.2.2 概念模型1.2.3 逻辑模型1.3 数据库系统结构1.3.1 数据库系统的三级模式结构1.3.2 数据库的二级映像功能和数据独立性1.3.3 数据库管理系统的工作过程1.4 大数据简介1.4.1 大数据的基本概念1.4
7、.2 大数据的处理过程1.4.3 大数据的技术支撑1.4.4 NoSQL数据库课后小结和布置作业:讨论与思考:1.什么是数据库?2.数据库管理系统有哪些功能?3.数据管理技术的发展经历了哪些阶段? 各阶段有何特点?4.什么是数据模型? 它由哪几部分组成?5.数据模型按应用层次可分为哪三类?6.数据库应用中有哪三种主要的逻辑模型? 简述各种逻辑模型的优点和缺点。7.试分析关系模型成为应用最广泛、最重要的一种逻辑模型的原因?8.什么是大数据? 简述大数据的基本特征。9.什么是 NoSQL数据库? 它有哪些特点?作 业:1. 设学生信息系统在需求分析阶段搜集到以下信息:专业信息:专业代码,专业名称学
8、生信息:学号、姓名、性别、出生日期、籍贯、总学分该业务系统有以下规则:一个专业可拥有多个学生,一个学生只属于一个专业根据以上信息设计合适的E-R图。2. 设学生信息系统在需求分析阶段搜集到以下信息:教师信息:教师号、姓名、性别、出生日期、职称、学院名课程信息:课程号、课程名、学分该业务系统有以下约束:一个教师可讲授多门课程,一门课程可为多个教师讲授根据以上信息设计合适的E-R图。五、主要参考资料:数据库原理与应用(基于MySQL),赵明渊,清华大学出版社,2022年1月第2章 关系数据库系统模型(2学时)一、教学目的:【了解】:SQL语言的特点;【理解】:关系模型的数据结构、关系的完整性以及关
9、系操作;【掌握】:掌握关系代数的运算规则,具备关系代数的运算能力。二、教学重点:关系模型的数据结构、关系的完整性以及关系操作;关系代数的运算规则。三、教学难点:教学难点是具备关系代数的运算能力。四、教学进程(含教学内容、教学方法、 辅助手段、师生互动、时间分配、板书设计、作业布置等):教学内容:本章主要讲述关系模型、关系代数和SQL语言的基本知识。通过本章的学习,可以掌握关系模型的数据结构、关系的完整性以及关系操作,关系代数的运算规则,培养关系代数的运算能力。教学过程设计:问题导向、新课导入、案例教学、课堂讨论、作业讲评。教学方法:以多媒体讲授和板书为主,并结合提问、设问、讨论等方法。内容提要
10、:2.1 关系模型2.1.1 关系数据结构2.1.2 关系操作2.1.3 关系的完整性2.2 关系代数2.2.1 传统的集合运算2.2.2 专门的关系运算2.3 SQL介绍2.3.1 SQL语言的分类2.3.2 SQL语言的特点课后小结和布置作业:讨论与思考:1. 简述关系模型的三个组成部分。2. 简述关系模型的完整性规则。3. 关系操作语言有何特点?可分为哪几类?4. 关系代数的运算有哪些?5. 试述等值连接和自然连接的区别和联系。6. SQL语言有何特点?可分为哪几类?作 业:1 设有学生课程数据库,包括学生关系S(Sno, Sname, Sex, Age, Speciality),各属性
11、含义为学号、姓名、性别、年龄、专业;课程关系C(Cno, Cname, Teacher),各属性含义为课程号、课程名、教师;选课关系SC(Sno, Cno, Grade),各属性含义为学号、课程号、成绩;试用关系代数表示下列查询语句。(1)查询“通信”专业学生的学号和姓名。(2)查询年龄在20岁到21岁的女学生学号、姓名和年龄。(3)查询选修了“英语”课程的学号、姓名。(4)查询至少选修了“1001”号课程和“9001”号课程的学号。(5)查询选修课程名为“信号与系统”的学号、姓名和成绩。五、主要参考资料:数据库原理与应用(基于MySQL),赵明渊,清华大学出版社,2022年1月第3章 MyS
12、QL的安装和运行(2学时)一、教学目的:【了解】:MySQL图形化管理工具;【理解】:MySQL的特点和MySQL 8.0新特性;【掌握】:MySQL 8.0安装和配置操作;MySQL服务器的启动和关闭;登录MySQL服务器的两种方式,具备使用MySQL命令行客户端和Windows命令行的能力。二、教学重点:教学重点是MySQL 8.0安装和配置操作,登录MySQL服务器的两种方式。三、教学难点:教学难点是具备使用MySQL命令行客户端和Windows命令行的能力。四、教学进程(含教学内容、教学方法、 辅助手段、师生互动、时间分配、板书设计、作业布置等):教学内容:本章主要介绍MySQL 8.
13、0新特性和安装配置操作,MySQL服务器的启动、关闭和登录。通过本章的学习,可以掌握MySQL 8.0安装配置操作和登录,培养使用MySQL命令行客户端和Windows命令行的能力。教学过程设计:问题导向、新课导入、案例教学、课堂讨论、作业讲评。教学方法:以多媒体讲授和板书为主,并结合提问、设问、讨论等方法。内容提要:3.1 MySQL的特点和 MySQL8.0的新特性3.1.1 MySQL的特点3.1.2 MySQL8.0的新特性3.2 MySQL8.0的安装和配置3.2.1 MySQL8.0的安装3.2.2 MySQL8.0的配置3.3 MySQL服务器的启动和关闭3.4 登录 MySQL
14、服务器3.4.1 MySQL命令行客户端3.4.2 Windows命令行3.5 MySQL图形化管理工具课后小结和布置作业:讨论与思考:1. 简述MySQL的特点。MySQL 8.0具有哪些新特征?2. 简述MySQL安装和配置步骤。3. 为什么需要配置服务器?主要配置那些内容?4. 简述启动和关闭MySQL服务器的操作步骤5. 如何判断MySQL服务器已经运行?6. 简述使用MySQL命令行客户端登录服务器的步骤。7. 简述使用Windows命令行登录服务器的步骤。8. 为什么使用Windows命令行登录服务器需要进入MySQL安装目录?9. 运行MySQL使系统提示符变成”mysql”,与
15、MySQL服务器有何关系?作 业:五、主要参考资料:MySQL数据库实用教程,赵明渊、唐明伟,人民邮电出版社,2021年12月第4章 MySQL数据库和表(2学时)一、教学目的:【了解】:MySQL系统数据库的组成;存储引擎;【理解】:表的基本概念;【掌握】:掌握创建数据库、修改数据库、删除数据库和选择数据库的方法,掌握CREATE DATABASE语句、ALTER DATABASE语句、DROP DATABASE语句、USE语句,具备使用上述语句分别创建数据库、修改数据库、删除数据库和选择数据库的能力;掌握MySQL常用的数据类型;掌握表结构设计;掌握创建表、修改表、删除表和查看表的方法,掌
16、握CREATE TABLE语句、ALTER TABLE语句、DROP TABLE语句、SHOW TABLES语句,具备使用上述语句分别创建表、修改表、删除表和查看表的能力。二、教学重点:教学重点是掌握创建表、修改表、删除表和查看表的语句和方法。三、教学难点:教学难点是具备使用CREATE TABLE语句、ALTER TABLE语句、DROP TABLE语句、SHOW TABLES语句分别创建表、修改表、删除表和查看表的能力。四、教学进程(含教学内容、教学方法、 辅助手段、师生互动、时间分配、板书设计、作业布置等):教学内容:本章首先讲解MySQL数据库的基本概念和创建数据库、修改数据库、删除数
17、据库和选择数据库的语句和方法,然后讲解表的基本概念和创建表、修改表、删除表和查看表的语句和方法,接着讲解数据完整性概念和创建或删除主键约束、唯一性约束、外键约束、检查约束的语句和方法。通过本章的学习,可以掌握MySQL数据库、表和数据完整性概念,培养使用CREATE DATABASE语句、ALTER DATABASE语句、DROP DATABASE语句、USE语句分别创建数据库、修改数据库、删除数据库和选择数据库的能力,使用CREATE TABLE语句、ALTER TABLE语句、DROP TABLE语句、SHOW TABLES语句分别创建表、修改表、删除表和查看表的能力,使用CREATE T
18、ABLE语句、ALTER TABLE语句分别创建和删除PRIMARY KEY约束、UNIQUE约束、FOREIGN KEY约束、CHECK约束的能力。教学过程设计:问题导向、新课导入、案例教学、课堂讨论、作业讲评。教学方法:以多媒体讲授和板书为主,并结合提问、设问、讨论等方法。内容提要:4.1 MySQL数据库简介4.2 定义数据库4.2.1 创建数据库4.2.2 选择数据库4.2.3 修改数据库4.2.4 删除数据库4.3 表的基本概念4.3.1 表和表结构4.3.2 表结构设计4.4 数据类型4.4.1 数值类型4.4.2 字符串类型4.4.3 日期和时间类型4.4.4 二进制数据类型4.
19、4.5 其他数据类型4.4.6 数据类型的选择4.5 定义表4.5.1 创建表4.5.2 查看表4.5.3 修改表4.5.4 删除表4.6 存储引擎课后小结和布置作业:讨论与思考:1. 为什么需要系统数据库?用户可否删除系统数据库?2. 在定义数据库中,包括哪些语句?3. 什么是表?简述表的组成。4. 什么是表结构设计?简述表结构的组成。5. 什么是关键字?什么是主键?6. 简述MySQL常用的数据类型。7. 简述创建表、查看表、修改表、删除表使用的语句。8. 什么是存储引擎?MySQL的存储引擎与Oracle、SQL Server的存储引擎有何不同?9. 简述存储引擎InnoDB、MyISA
20、M和MEMORY的特点。作 业:1. 创建课程表(course)、成绩表(score)、教师表(teacher)、讲课表(lecture),其表结构参见附录B。2. 在student表中,插入一列id(身份证号,char(18)),然后删除该列。五、主要参考资料:数据库原理与应用(基于MySQL),赵明渊,清华大学出版社,2022年1月第5章 表数据操作(2学时)一、教学目的:【了解】:数据操纵语言的作用和包括的语句;【掌握】:掌握对表中的数据进行增加、修改、删除的方法,掌握INSERT语句、UPDATE语句、DELETE语句,具备使用上述语句分别对表中的数据进行增加、修改、删除的能力;二、教
21、学重点:教学重点是使用INSERT语句、UPDATE语句、DELETE语句对表中的数据分别进行增加、修改、删除的方法。三、教学难点:教学难点是具备使用INSERT语句、UPDATE语句、DELETE语句分别对表中的数据进行增加、修改、删除的能力。四、教学进程(含教学内容、教学方法、 辅助手段、师生互动、时间分配、板书设计、作业布置等):教学内容:本章主要讲述对表中的数据进行增加、修改、删除的语句和方法。通过本章的学习,可以培养使用INSERT语句、UPDATE语句、DELETE语句分别对表中的数据进行增加、修改、删除的能力。教学过程设计:问题导向、新课导入、案例教学、课堂讨论、作业讲评。教学方
22、法:以多媒体讲授和板书为主,并结合提问、设问、讨论等方法。内容提要:5.1 插入数据5.1.1 为表的所有列插入数据5.1.2 为表的指定列插入数据5.1.3 插入多条记录5.1.4 REPLACE语句5.1.5 插入查询结果语句5.2 修改数据5.2.1 修改指定记录5.2.2 修改全部记录5.3 删除数据5.3.1 删除指定记录5.3.2 删除全部记录课后小结和布置作业:讨论与思考:1. 简述插入数据所使用的语句。2. 比较插入列值使用的两种方法:不指定列名和指定列名。3. 修改数据有哪两种方法?4. 比较删除数据使用的两种方法:删除指定记录和删除全部记录。5. 删除全部记录有哪两种方式?
23、 各有何特点?作 业:1. 向课程表(course)插入样本数据,参见附录 B中的表 B.7。2. 使用INSERTINTOSELECT语句,将course表的记录快速插入course1表中。3. 采用3种不同的方法,向course2表插入数据。(1)省略列名表,插入记录(1004,数据库系统 ,4)。(2)不省略列名表,插入课程号为1017、学分为3、课程名为“操作系统”的记录。(3)插入课程号为4002、课程名为“数字电路”、学分为空的记录。4. 在course1表中,将课程名“操作系统”改为“计算机网络”。5. 在course1表中,将课程号1201的学分改为3。6. 在course1表
24、中,删除课程名为“高等数学”的记录。7. 采用如下两种不同的方法,删除表中的全部记录。(1)使用 DELETE语句,删除course1表中的全部记录。(2)使用 TRUNCATE语句,删除course2表中的全部记录。8. 分别向成绩表(score)、教师表(teacher)、讲课表(lecture)插入样本数据,参见附录 B中的表 B.8表 B.10。五、主要参考资料:数据库原理与应用(基于MySQL),赵明渊,清华大学出版社,2022年1月第6章 数据查询(4学时)一、教学目的:【理解】:SELECT语句是SQL语言的核心及其组成;【掌握】:掌握SELECT子句,具备使用该子句进行投影查询
25、的能力;掌握WHERE子句,具备使用该子句进行选择查询的能力;掌握GROUP BY子句、HAVING子句和聚合函数,具备使用上述子句和函数分别进行分组查询和统计计算的能力;掌握ORDER BY子句和LIMIT子句,具备使用上述子句分别进行排序查询和限制SELECT语句返回的行数查询的能力;掌握内连接、外连接和交叉连接语句,具备使用上述语句分别进行连接查询的能力;掌握IN子查询、比较子查询、EXISTS子查询语句,具备使用上述语句分别进行子查询的能力;掌握联合查询语句,具备使用上述语句进行联合查询的能力。二、教学重点:教学重点是掌握SELECT子句、WHERE子句、GROUP BY子句、HAVI
26、NG子句、ORDER BY子句和LIMIT子句分别进行投影查询、选择查询、分组查询、排序查询、限制SELECT语句返回的行数查询;掌握内连接、外连接和交叉连接语句,IN子查询、比较子查询、EXISTS子查询语句,和联合查询语句分别进行连接查询、子查询和联合查询。三、教学难点:教学难点是具备使用SELECT子句、WHERE子句、GROUP BY子句、HAVING子句、ORDER BY子句和LIMIT子句分别进行投影查询、选择查询、分组查询、排序查询、限制SELECT语句返回的行数查询的能力;具备使用内连接、外连接和交叉连接语句,IN子查询、比较子查询、EXISTS子查询语句,和联合查询语句分别进
27、行连接查询、子查询和联合查询的能力。四、教学进程(含教学内容、教学方法、 辅助手段、师生互动、时间分配、板书设计、作业布置等):教学内容:本章首先讲述SELECT语句是SQL语言的核心及其组成,然后讲述SELECT子句,WHERE子句,GROUP BY子句、HAVING子句、ORDER BY子句和LIMIT子句,接着讲述连接查询、子查询和联合查询。通过本章的学习,可以培养使用SELECT子句、WHERE子句、GROUP BY子句、HAVING子句、ORDER BY子句和LIMIT子句进行投影查询、选择查询、分组查询、排序查询、限制SELECT语句返回的行数查询的能力,使用连接查询、子查询和联合
28、查询进行连接查询、子查询和联合查询的能力。教学过程设计:问题导向、新课导入、案例教学、课堂讨论、作业讲评。教学方法:以多媒体讲授和板书为主,并结合提问、设问、讨论等方法。内容提要:6.1 SELECT 语句6.2 投影查询6.3 选择查询6.4 分组查询和统计计算6.5 排序查询和限制查询结果的数量6.6 连接查询6.6.1 交叉连接6.6.2 内连接6.6.3 外连接6.7 子查询6.7.1 IN 子查询6.7.2 比较子查询6.7.3 EXISTS子查询6.8 联合查询课后小结和布置作业:讨论与思考:1. SELECT 语句包含哪几个子句? 简述各个子句的功能。2. 比较 LIKE关键字和
29、 REGEXP关键字用于匹配基本字符串的异同。3. 什么是聚合函数? 简述聚合函数的函数名称和功能。4. 在一个 SELECT 语句中,当 WHERE 子句、GROUPBY 子句和 HAVING 子句同时出现在一个查询中时,SQL的执行顺序如何?5. 在使用JOIN关键字指定的连接中,怎样指定连接的多个表的表名? 怎样指定连接条件?6. 内连接、外连接有什么区别? 左外连接、右外连接和全外连接有什么区别?7. 什么是子查询? IN 子查询、比较子查询、EXISTS子查询各有何功能?8. 什么是联合查询? 简述其功能。作 业:1. 查询score表中学号为196004,课程号为1201的学生成绩
30、。2. 查询student表中姓周的学生情况。3. 查询数学成绩第25名的信息。4. 查询通信专业最高学分的学生的情况。5. 查询1004课程的最高分、最低分、平均成绩。6. 查询至少有3名学生选修且以4开头的课程号和平均分数。7. 将计算机专业的学生按出生时间升序排列。8. 查询各门课程最高分的课程号和分数,并按分数降序排列。9. 查询选修3门以上课程且成绩在85分以上的学生的情况。10. 查找选修了“英语”的学生姓名及成绩。11. 查询选修了“高等数学”且成绩在80分以上的学生情况。12. 查询选修某课程的平均成绩高于85分的教师姓名。13. 查询选学1201号课程或选学1004号课程的学
31、生姓名、性别、总学分。14. 查询每个专业最高分的课程名和分数。15. 查询通信专业的最高分。16. 查询数据库系统课程的任课教师。17. 查询成绩高于平均分的成绩记录。五、主要参考资料:数据库原理与应用(基于MySQL),赵明渊,清华大学出版社,2022年1月第7章 视图和索引(2学时)一、教学目的:【理解】:视图的概念及其作用;索引的概念及其作用;【掌握】:掌握创建视图、修改视图、删除视图、查询视图的方法,掌握CREATE VIEW语句、ALTER VIEW语句、DROP VIEW语句、SELECT语句,具备使用上述语句分别创建视图、修改视图、删除视图、查询视图的能力;掌握更新视图,具备对
32、更新视图进行插入、删除、修改数据的能力;掌握三种创建索引的方法,掌握 CREATE INDEX语句、ALTER TABLE语句分别在已有的表上创建索引的能力,具备使用CREATE INDEX语句在创建表的同时创建索引的能力;具备使用SHOW INDEX语句查看表上建立的索引的能力;掌握两种删除索引的方法,具备使用DROP INDEX语句、 ALTER TABLE语句分别删除索引的能力。二、教学重点:教学重点是掌握创建视图、修改视图、删除视图、查询视图的语句和方法,掌握更新视图的方法,掌握三种创建索引的方法和两种删除索引的语句和方法。三、教学难点:教学难点是具备使用CREATE VIEW语句、A
33、LTER VIEW语句、DROP VIEW语句、SELECT语句分别创建视图、修改视图、删除视图、查询视图的能力,具备对更新视图进行插入、删除、修改数据的能力,具备使用CREATE INDEX语句、ALTER TABLE语句分别创建索引的能力和使用DROP INDEX语句、ALTER TABLE语句分别删除索引的能力。四、教学进程(含教学内容、教学方法、 辅助手段、师生互动、时间分配、板书设计、作业布置等):教学内容:本章首先介绍视图的概念和创建视图、修改视图、删除视图、查询视图的语句和方法,然后介绍索引的概念和创建索引、删除索引的语句和方法。通过本章的学习,可以掌握视图的概念和索引的概念,培
34、养使用CREATE VIEW语句、ALTER VIEW语句、DROP VIEW语句、SELECT语句分别创建视图、修改视图、删除视图、查询视图的能力,对更新视图进行插入、删除、修改数据的能力,使用CREATE INDEX语句、ALTER TABLE语句分别创建索引的能力和使用DROP INDEX语句、ALTER TABLE语句分别删除索引的能力。教学过程设计:问题导向、新课导入、案例教学、课堂讨论、作业讲评。教学方法:以多媒体讲授和板书为主,并结合提问、设问、讨论等方法。内容提要:7.1 视图及其作用7.2 视图操作7.2.1 创建视图7.2.2 查询视图7.2.3 更新视图7.2.4 修改视
35、图7.2.5 删除视图7.3 索引及其作用7.4 索引操作7.4.1 创建索引7.4.2 查看表上建立的索引7.4.3 删除索引课后小结和布置作业:讨论与思考:1. 什么是视图?简述视图的优点。2. 简述表与视图的区别和联系。3. 什么是可更新视图?可更新视图需要满足那些条件?4. 什么是索引?简述索引的作用和使用代价。5. 简述MySQL中索引的分类及特点。6. 简述在MySQL中创建索引、查看索引和删除索引的语句。作 业:1. 在数据库stusys中创建一个 V_SpecialityStudentCourseScore视图,包含学号、姓名、性别、课程号、课程名、成绩等列,专业为计算机,并查
36、询视图的所有记录。2. 在数据库stusys中创建一个 V_CourseScore视图,包含学生学号、课程名、成绩等列,然后查询该视图的所有记录。3. 在数据库stusys中创建一个 V_AvgGradeStudentScore视图,包含学生学号、姓名、平均分等列,按平均分降序排列,再查询该视图的所有记录。4. 写出在course表上credit列建立普通索引的语句。5. 写出在teacher表上tname列(升序)和tbirthday列(降序)建立组合索引的语句。6. 写出在student表的sno列上创建索引的语句,要求按学号sno字段值前4个字符降序排列。7. 创建新表score1表,主
37、键为sno和cno,同时在grade列上创建唯一性索引。五、主要参考资料:数据库原理与应用(基于MySQL),赵明渊,清华大学出版社,2022年1月第8章 数据完整性(2学时)一、教学目的:【理解】:数据完整性的概念;实体完整性通过主键约束、唯一性约束来实现,参照完整性通过外键约束与主键约束(或唯一性约束)之间的对应关系来实现,用户定义的完整性通过检查约束、非空约束来实现;【掌握】:掌握CREATE TABLE语句,具备使用该语句分别创建PRIMARY KEY约束、UNIQUE约束、FOREIGN KEY约束、CHECK约束的能力;掌握ALTER TABLE语句,具备使用该语句分别创建或删除P
38、RIMARY KEY约束、UNIQUE约束、FOREIGN KEY约束、CHECK约束的能力。二、教学重点:教学重点是掌握创建和删除PRIMARY KEY约束、UNIQUE约束、FOREIGN KEY约束、CHECK约束的语句和方法。三、教学难点:教学难点是具备使用CREATE TABLE语句、ALTER TABLE语句分别创建和删除PRIMARY KEY约束、UNIQUE约束、FOREIGN KEY约束、CHECK约束的能力。四、教学进程(含教学内容、教学方法、 辅助手段、师生互动、时间分配、板书设计、作业布置等):教学内容:本章讲解数据完整性概念和创建或删除主键约束、唯一性约束、外键约束、
39、检查约束的语句和方法。通过本章的学习,可以掌握数据完整性概念,培养使用CREATE TABLE语句、ALTER TABLE语句分别创建和删除PRIMARY KEY约束、UNIQUE约束、FOREIGN KEY约束、CHECK约束的能力。教学过程设计:问题导向、新课导入、案例教学、课堂讨论、作业讲评。教学方法:以多媒体讲授和板书为主,并结合提问、设问、讨论等方法。内容提要:8.1 数据完整性概述8.2 实体完整性8.2.1 主键约束8.2.2 唯一性约束8.3 参照完整性8.3.1 参照完整性规则8.3.2 外键约束8.4 用户定义的完整性8.4.1 检查约束8.4.2 非空约束课后小结和布置作
40、业:讨论与思考:1. 什么是数据完整性? MySQL有哪几种数据完整性类型?2. 什么是主键约束? 什么是唯一性约束? 两者有什么区别?3. 什么是外键约束?4. 怎样定义 CHECK 约束和 NOTNULL约束?作 业:1. 在score表的grade列添加 CHECK 约束,限制grade列的值在0100。2. 删除student表的sno列的 PRIMARY KEY 约束,然后在该列添加 PRIMARY KEY 约束。3.在score表的sno列添加FOREIGN KEY 约束,与student表中主键列对应,创建表间参照关系。五、主要参考资料:数据库原理与应用(基于MySQL),赵明渊
41、,清华大学出版社,2022年1月第9章 MySQL语言(2学时)一、教学目的:【理解】:MySQL语言在标准SQL语言的基础上进行了扩展,并以标准SQL语言为主体;MySQL语言的组成;【掌握】:常用的MySQL函数,包括:数学函数、聚合函数、字符串函数、日期和时间函数等,具备使用常用的MySQL函数的能力。二、教学重点:教学重点是常用的MySQL函数。三、教学难点:教学难点是定点数和浮点数的概念,具备使用常用的MySQL函数的能力。四、教学进程(含教学内容、教学方法、 辅助手段、师生互动、时间分配、板书设计、作业布置等):教学内容:本章主要讲解SQL和MySQL语言组成,常用的MySQL函数
42、。通过本章的学习,可以理解MySQL语言的组成,培养使用常用的MySQL函数的能力。教学过程设计:问题导向、新课导入、案例教学、课堂讨论、作业讲评。教学方法:以多媒体讲授和板书为主,并结合提问、设问、讨论等方法。内容提要:9.1 MySQL语言的组成9.2 MySQL函数课后小结和布置作业:讨论与思考:1. 什么是SQL语言?2. SQL语言可分为哪几类? 简述各类包含的语句。3. MySQL语言由哪几部分组成? 简述每部分包含的SQL语句或语言要素。4. 什么是变量? 变量可分为哪两类?5. 什么是用户变量? 怎样定义用户变量?6. 什么是内置函数? 常用的内置函数有哪几种?作 业:1. 对
43、于course表,定义用户变量cno并赋值,查询课程号等于该用户变量的值时的课程信息。2. 对于course表,定义用户变量cname,获取课程号为1201的课程名称。3. 保留浮点数3.14159小数点后2位。4. 从字符串“Thank you very much!”中获取子字符串very。5. 查询每个学生的平均分,保留整数部分,小数部分四舍五入。五、主要参考资料:数据库原理与应用(基于MySQL),赵明渊,清华大学出版社,2022年1月第10章 存储过程和存储函数(2学时)一、教学目的:【理解】:存储过程的概念,存储过程体及存储过程体中常用的语法元素;存储函数的概念;【掌握】:掌握局部变
44、量、流程控制,掌握存储过程的三种参数类型:输入参数IN、输出参数OUT和输入/输出参数INOUT;掌握CREATE PROCEDURE语句、CALL语句、DROP PROCEDURE语句,具备使用上述语句分别创建存储过程、调用存储过程、删除存储过程的能力;掌握CREATE FUNCTION语句、SELECT语句、DROP FUNCTION语句,具备使用上述语句分别创建存储函数、调用存储函数、删除存储函数的能力。二、教学重点:教学重点是掌握创建存储过程、调用存储过程、删除存储过程的语句和方法,掌握创建存储函数、调用存储函数、删除存储函数的语句和方法。三、教学难点:教学难点是具备使用CREATE
45、PROCEDURE语句、CALL语句、DROP PROCEDURE语句分别创建存储过程、调用存储过程、删除存储过程的能力,具备使用CREATE FUNCTION语句、SELECT语句、DROP FUNCTION语句分别创建存储函数、调用存储函数、删除存储函数的能力。四、教学进程(含教学内容、教学方法、 辅助手段、师生互动、时间分配、板书设计、作业布置等):教学内容:本章首先讲解存储过程的概念和创建存储过程、调用存储过程、删除存储过程的语句和方法,然后讲解存储函数的概念和创建存储函数、调用存储函数、删除存储函数的语句和方法。通过本章的学习,可以掌握存储过程的概念、存储函数的概念,培养使用CREATE PROCEDURE语句、CALL语句、DROP PROCEDURE语句分别创建存储过程、调用存储过程、删除存储过程的能力,使用CREATE FUNCTION语句、SELECT语句、DROP FUNCTION语句分别创建存储函数、调用存储函数、删除存储函数的能力。教学过程设计:问题导向、新课导入、案例教学、课堂讨论、作业讲评。教学方法:以多媒体讲授和板书为主,并结合提问、设问、讨论等方法。内容提要:10.1 存储过程概述10.2 存储