版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《数据库基础》教案第32页共93页教案年/年第学期课程名称MYSQL数据库技术课程类别专业必修课任课班级任课教师教师所属院部二O年月日学科数据库基础课题数据库基础知识序号1时数2授课班级教学目的及要求:1、理解数据库、数据库管理系统、数据库应用系统等基本概念2、掌握数据模型,特别是关系模型的特点教学重点:数据库、数据库管理系统、数据库应用系统教学难点:关系模型实验仪器及教具:电脑平台及投影仪,MySQL8.0,NavicatForMySQL软件教学资源列表与访问路径备注职教云:/expertCenter/process/edit.html?courseOpenId=ggz1afatoi9lpuyvgshqiq&tokenId=23v1afat7apbaqlikw2kw在线教学过程(学生自主学习指引)一、教师课堂教学(40分钟)任务1了解数据库的基础知识1.数据与数据库2.数据库技术的发展3.数据库管理系统(DBMS)4.数据库系统的组成5.数据库系统的特点6.常见的关系型数据库管理系统7.结构化查询语言SQL二、学生自主学习(35分钟)1、观看微课视频,强化课程中的重点、难点学习(20分钟)要求观看微课视频如下,职教云中设置对学生观看自动考核:2、完成网络课程作业(15分钟)职教云作业:数据库基础知识测试三、教学互动(5分钟)对教学过程中和学生自主学习过程中的问题进行总结和答疑。在线辅导与答疑安排利用职教云平台,对教学过程中和学生自主学习过程中的问题进行总结和答疑。时间暂定5分钟。作业中存在的普遍问题其他问题互动课后作业:教材第一章理论练习一、二题续页第一章数据库基础知识1.1任务一了解数据库的基础知识1.1.1数据与数据库1.数据2.数据处理3.数据管理4.数据库5.数据库技术6.数据库技术特点1.1.2数据库的发展1.人工管理阶段2.文件系统阶段3.数据库系统阶段4.分布式数据库系统阶段1.1.3数据库管理系统(DBMS)数据库管理系统(DBMS-DataBaseManagementSystem)对收集到的大量数据进行整理、加工、归并、分类、计算、存储等处理,产生新的数据。马兰马兰A004杨可A003刘开泰B008李新爱B007数据库检索数据插入数据更新数据删除数据数据库管理系统-DBMS图2-4数据库管理系统(DBMS)的基本功能示意图现在,比较流行的常用数据库管理系统有MicrosoftSQLServer、Oracle、MySQL等。1.1.4数据库系统的组成数据库系统(DataBaseSystem,DBS)实际上是一个应用系统,数据、数据库、数据库管理系统与操作数据库的应用程序,加上支撑它们的硬件平台、软件平台和与数据库有关的人员一起构成了一个完整的数据库系统。图2-5数据库系统的构成1.1.5数据库系统的特点1)实现数据共享2)实现数据独立3)减少数据冗余度4)避免了数据不一致性5)加强了对数据的保护1.1.6常见的关系型数据库管理系统常见的关系型数据库管理系统产品有Oracle、SQLServer、MySQL、Access等。1.1.7结构化查询语言SQL(StructuredQueryLanguage)关系数据库的标准语言是SQL(StructuredQueryLanguage,结构化查询语言)。SQL语言是用于关系数据库查询的结构化语言,最早由Boyce和Chambedin在1974年提出,称为SEQUEL语言。1976年,IBM公司的SanJose研究所在研制关系数据库管理系统SystemR时修改为SEQUEL2,即目前的SQL语言。1.2任务二MySQL的安装与配置目前Internet上流行的网站构架方式是LAMP(Linux+Apache+MySQL+PHP),即使用Linux作为操作系统,Apache作为Web服务器,MySQL作为数据库,PHP作为服务器端脚本解释器。由于这4个软件都是遵循GPL的开放源码软件,因此使用这种方式不用花一分钱就可以建立起一个稳定、免费的网站系统。1.2.1MySQL服务器的安装与配置1.MySQL服务器的安装2.MySQL服务器的配置1.2.2Navicat套装软件的安装NavicatforMySQL是一个桌面版MySQL数据库管理和开发工具,和微软SQLServer的管理器很像,易学易用,很受大家的欢迎。配置AppServ软件本课程将以NavicatforMySQL为例介绍MySQL数据库管理工具的使用。(1)安装Navicat软件(2)使用Navicat连接MySQL服务器1.2.3连接与断开服务器为了连接服务器,当调用mysql时,通常需要提供一个MySQL用户名并且很可能需要一个密码。如果服务器运行在登录服务器之外的其它机器上,还需要指定主机名。联系管理员以找出进行连接所使用的参数(即,连接的主机、用户名和使用的密码)。知道正确的参数后,可以按照以下方式进行连接:(1)选择Windows桌面的“开始-运行”选项,输入正确的命令和用户名及密码后,可以登录到MySQL服务器。命令格式:mysql-h<主机名>–u<用户名>-p<密码>提示:命令行中的-u、-p必须小写。<主机名>和<用户名>分别代表MySQL服务器运行的主机名和MySQL账户用户名。设置时替换为正确的值。(2)直接以用户名root的数据库管理员身份登录到数据库服务器。选择Windows桌面的“开始-程序-appserv-MySQLcommandlineclient”选项,出现如上图所示的窗口,输入正确的数据库管理员的密码,出现“mysql>”提示符表示正确登录MySQL服务器。密码是“123456”。(3)断开服务器成功地连接后,可以在mysql>提示下输入QUIT(或\q)随时退出:mysql>QUIT学科数据库基础课题实验一安装与配置MySQL数据库序号2时数2授课班级教学目的及要求:1、掌握MySQL数据库的安装与配置2、掌握Navicat软件包的安装3、学会使用命令方式和图形管理工具连接和断开服务器的操作教学重点:MySQL数据库的安装与配置教学难点:MySQL数据库的配置实验仪器及教具:1)实验室内有交换式局域网2)MySQL8.0数据库安装软件3)NavicatForMySQL工具软件教学过程备注实验一安装MySQL数据库一、实验内容1、安装MySQL服务器1)登录MySQL官方网站,下载合适的版本,安装MySQL服务器2)配置并测试所安装的MySQL服务器2、软件包的安装1)安装Navicat软件2)使用Navicat连接MySQL服务器3、连接与断开服务器1)用两种不同的方式连接到MySQL服务器2)断开与服务器的连接二、实验步骤参见教材第一章1.2节学科数据库基础课题数据库关系模型序号3时数2授课班级教学目的及要求:掌握E-R图基本概念和绘制方法掌握E-R图到关系模式的转换方法教学重点:E-R图、E-R图到关系模式的转换 教学难点:E-R图实验仪器及教具:电脑平台及投影仪,MySQL8.0,NavicatForMySQL软件教学资源列表与访问路径备注职教云:/expertCenter/process/edit.html?courseOpenId=ggz1afatoi9lpuyvgshqiq&tokenId=23v1afat7apbaqlikw2kw在线教学过程(学生自主学习指引)一、教师课堂教学(40分钟)任务1设计数据库关系模型1.数据模型2.概念模型3.E-R图的设计4.数据库关系模型的建立二、学生自主学习(35分钟)1、观看微课视频,强化课程中的重点、难点学习(20分钟)要求观看微课视频如下,职教云中设置对学生观看自动考核:2、完成网络课程作业(15分钟)职教云作业:E-R图三、教学互动(5分钟)对教学过程中和学生自主学习过程中的问题进行总结和答疑。在线辅导与答疑安排利用职教云平台,对教学过程中和学生自主学习过程中的问题进行总结和答疑。时间暂定5分钟。作业中存在的普遍问题其他问题互动课后作业:教材第二章理论练习第一题续页第二章数据库设计2.1任务一设计数据库关系模型数据的加工是一个逐步转化的过程,经历了现实世界、信息世界和计算机世界这3个不同的世界,经历了两级抽象和转换,如图所示。数据库的设计是指对于一个给定的应用环境。构造最优的数据库模式,建立数据库及其应用系统,有效存储数据,满足用户信息要求和处理要求。下图展示了根据现实世界的实体模型设计优化的数据库的主要步骤:数据库数据库现实世界建模信息世界模型转换规范化计算机世界数据库事物类事物性质实体集实体属性文件记录数据项实体模型概念模型:关系模型图2-2数据库的设计步骤示意图2.1.1数据模型1.层次型数据库2.网络型数据库3.关系型数据库关系模型中的各个关系模式不应当是孤立的,也不是随意拼凑的一堆二维表,它必须满足相应的要求。1)数据表通常是一个由行和列组成的二维表,每一个数据表分别说明数据库中某一特定的方面或部分的对象极其属性。2)数据表中的行通常叫做记录或元组,它代表众多具有相同属性的对象中的一个;3)数据表中的列通常叫做字段或属性,它代表相应数据库中存储对象的共有的属性。4)一个关系表必须符合某些特定条件,才能成为关系模型的一部分。主键和外键数据表之间的关联实际上是通过键(Key)来实现的。所谓的“键”是指数据表的一个字段,键分为主键(PrimaryKey)和外键(ForeignKey)两种,它们都在数据表连接的过程中起着重大的作用。(1)主键主键是数据表中具有唯一性的字段,也就是说数据表中任意两条记录都不可能拥有相同的主键字段。(2)外键一个数据表将使用该数据表中的外键连接到其他的数据表,而这个外键字段在其他的数据表中将作为主键字段出现。2.1.2概念模型E-R图的组成要素及其画法1)实体型(Entity):具有相同属性的实体具有相同的特征和性质,用实体名及其属性名集合来抽象和刻画同类实体;在E-R图中用矩形表示,矩形框内写明实体名;比如学生张三丰、学生李寻欢都是实体。2)属性(Attribute):实体所具有的某一特性,一个实体可由若干个属性来刻画。在E-R图中用椭圆形表示,并用无向边将其与相应的实体连接起来;比如学生的姓名、学号、性别、都是属性。3)联系(Relationship):实体集之间的相互关系。在E-R图中用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:1,1:n或m:n)。比如老师给学生授课存在授课关系,学生选课存在选课关系。4)主码(关键字):实体集中的实体彼此是可区别的,如果实体集中的属性或最小属性组合的值能唯一标识其对应实体,则将该属性或属性组合称为码。对于每一个实体集,可指定一个码为主码。当一个属性或属性组合指定为主码时,在实体集与属性的连接线上标记一斜线,则可以用图1-6描述学生成绩管理系统中的实体集及每个实体集涉及的属性。图2-6学生和课程实体集属性的描述2.一对一的联系(1:1)3.一对多的联系(1:n)4.多对多的联系(m:n)2.2.3E-R图设计实例【例1】画出一个简单的工厂管理系统E-R模型。一个工厂中的实体类型有雇员、部门、供应商、原材料、成品和仓库。【例2】画出出版社和图书的E-R图。这里有三个问题需要仔细考虑。第一个问题是:怎么标识书号?第二个问题是,有些属性的值如果有多个,该怎么办?第三个问题是:一个实体究竟有多少属性?深化与提高这里通过出版社—图书的例子,尤其是引出的三个问题,说明建立在现实世界基础上的E-R模型并不只有唯一答案。面向不同的应用、使用不同的方法,可以设计出不同的E-R模型。2.1.4数据库关系模型的建立1.(1:1)联系的E-R图到关系模式的转换2.(1:n)联系的E-R图到关系模式的转换3.(m:n)联系的E-R图到关系模式的转换至此,已介绍了根据E-R图设计关系模式的方法,通常这一设计过程称为逻辑结构设计。学科数据库基础课题实验二创建“图书管理系统”的数据模型序号4时数2授课班级教学目的及要求:1、掌握E-R图设计的基本方法,能绘制局部E-R图,并集成全局E-R图2、运用关系数据库模型的基本知识将概念模型转化为关系模型教学重点:E-R图设计教学难点:集成全局E-R图实验仪器及教具:1)实验室内有交换式局域网2)MySQL8.0,NavicatForMySQL软件教学过程备注实验二创建“图书管理系统”的数据模型一、实验内容某借阅图书借阅系统,根据系统需求分析,存在以下实体:读者实体:属性有读者编号、姓名、单位、证件有效性。读者类型实体:属性有类别号、类别名、可借天数、可借数量。图书实体:属性有书号、书名、类别、作者、出版社、单价、数量。库存实体:属性有条码、存放位置、库存状态。图书存放书库,因一种图书可以有多本,书库为每本图书生成一个条形码,按一定规则记录存放位置,默认的库存状态是在馆。读者到书库借书和还书,与库存实体建立借阅联系,每个读者可以借多本书,每本书可以经多位读者借阅。每借一本书,都涉及到借期和还期、图书的借阅状态改变。(1)请设计图书借阅管理系统的E-R模型。(2)将E-R模型转换为关系模型。二、实验步骤参见教材第二章2,1节学科数据库基础课题数据库设计规范化序号5时数2授课班级教学目的及要求:1、掌握关系数据库范式理论的基本思想2、掌握数据库设计规范化的基本方法教学重点:范式理论、数据库设计规范化教学难点:范式理论实验仪器及教具:1)电脑平台及投影仪,2)MySQL8.0,NavicatForMySQL软件教学资源列表与访问路径备注职教云:/expertCenter/process/edit.html?courseOpenId=ggz1afatoi9lpuyvgshqiq&tokenId=23v1afat7apbaqlikw2kw在线教学过程(学生自主学习指引)一、教师课堂教学(40分钟)任务2数据库设计规范化1.关系型数据库范式理论2.数据库规范化实例二、学生自主学习(35分钟)1、观看微课视频,强化课程中的重点、难点学习(20分钟)要求观看微课视频如下,职教云中设置对学生观看自动考核:2、完成网络课程作业(15分钟)职教云作业:数据库规范化设计三、教学互动(5分钟)对教学过程中和学生自主学习过程中的问题进行总结和答疑。在线辅导与答疑安排利用职教云平台,对教学过程中和学生自主学习过程中的问题进行总结和答疑。时间暂定5分钟。作业中存在的普遍问题其他问题互动课后作业:教材第二章理论练习第一题续页2.2任务二数据库设计规范化2.2.1关系型数据库范式理论关系数据库范式理论是在数据库设计过程中将要依据的准则,数据库结构必须要满足这些准则,才能确保数据的准确性和可靠性。这些准则则被称为规范化形式,即范式。范式按照规范化的级别分为5种:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、第四范式(4NF)和第五范式(5NF)。在实际的数据库设计过程中,通常需要用到的是前三类范式,下面对它们分别介绍。1.第一范式(1NF)2.第二范式(2NF)3.第三范式(3NF)2.2.2.数据库规范化实例某建筑公司要设计一个数据库。公司的业务规则概括说明如下:①公司承担多个工程项目,每一项工程有:工程号、工程名称、施工人员等②公司有多名职工,每一名职工有:职工号、姓名、性别、职务(工程师、技术员)等③公司按照工时和小时工资率支付工资,小时工资率由职工的职务决定(例如,技术员的小时工资率与工程师不同)案例分析:1)将建筑公司的工资表转换为关系表格,得到项目工时表2)项目工时表中包含大量的冗余,可能会导致数据异常:①更新异常例如,修改职工号=1001的职务,则必须修改所有职工号=1001的行②添加异常若要增加一个新的职工时,首先必须给这名职工分配一个工程。或者为了添加一名新职工的数据,先给这名职工分配一个虚拟的工程。(因为主关键字不能为空)③删除异常例如,1001号职工要辞职,则必须删除所有职工号=1001的数据行。这样的删除操作,很可能丢失了其它有用的数据3)根据范式理论规范数据库设计采用这种方法设计表的结构,虽然很容易产生工资报表,但是每当一名职工分配一个工程时,都要重复输入大量的数据。这种重复的输入操作,很可能导致数据的不一致性。图1-14项目工时表信息分类示意图应用第二范式,将项目工时表拆分为如下所示工程表、员工表、工时表。工程号工程名称①工程表:工程号职工号工时②工时表:职工号姓名职务小时工资率③员工表:对于员工表,职务和小时工资率存在函数依赖,应用第三范式,将员工表进一步拆分为员工表和职务表如下:③员工表:职工号姓名职务④职务表职务小时工资率2.3综合实例PetStore数据库的设计宠物商店电子商务系统的业务逻辑如下:1)用户注册:输入用户号、用户名、密码、性别、住址、邮箱、电话
进行注册,注册成功后就可以进行按产品的分类浏览网站2)商品管理:为管理员所用,管理员可以增加商品分类,以及为每个分类增加商品,其中商品包括商品名、商品介绍、市场价格、当前价格、数量
3)
用户订购宠物:当用户看重某个宠物时,可以加入用户的购物车,当用户购物车宠物选择完毕时,就可以进行预定,预定涉及到订单,订单明细。其中订单包含订单号、下订单的用户号、订单日期、订购总价、订单是否已处理等信息。而对每张订单,有与改订单对应的订购明细表,列出所购商品号、单价、数量。案例分析1.根据宠物商店电子商务系统的业务逻辑建立概念模型:PetStoreE-R图2.将PetStoreE-R图转化为数据世界使用关系模型:1)商品表product(商品号,商品名,商品介绍,商品分类,市场价格,当前价格,数量)2)订单表orders(订单号,用户号,订单日期,订购总价,订单状态3)选购明细表lineitem(订单号,商品号,单价,数量)4)用户表account(用户号,用户名,密码,性别,住址,邮箱,电话
)3.PetStore数据库规范化商品表product中的商品分类和商品存在函数依赖关系,应用第三范式理论,将其分为两个表:商品表product和商品分类表category。1)商品表product(商品编号,商品名,商品介绍,市场价格,当前价格,数量)2)商品分类表category(类别编号,分类名称)3)订单表orders(订单号,用户号,订单日期,订单总价,订单状态)4)选购明细表lineitem(订单号,商品编号,单价,数量)5)用户表account(用户编号,用户名,密码,性别,住址,邮箱,电话
)学科数据库基础课题实验三数据库规范化实操序号6时数2授课班级教学目的及要求:1、掌握数据库第一范式、第二范式、第三范式的基本要点2、运用关系数据库模型的基本知识将概念模型转化为关系模型教学重点:范式理论教学难点:规范化实验仪器及教具:1)实验室内有交换式局域网2)MySQL8.0,NavicatForMySQL软件教学过程备注实验三数据库规范化实操一、实验内容1、教学管理系统数据库设计学校有若干个系,每个系有各自的系号、系名和系主任;每个系有若干名教师和学生,教师有教师号、教师名和职称属性,每个教师可以担任若干门课程,一门课程只能由一位教师讲授,课程有课程号、课程名和学分,并参加多项项目,一个项目有多人合作,且责任轻重有个排名,项目有项目号、名称和负责人;学生有学号、姓名、年龄、性别,每个学生可以同时选修多门课程,选修有分数。(1)请设计此学校的教学管理的E-R模型。(2)将E-R模型转换为关系模型。(3)应用范式理论对关系模型规范化二、实验步骤参见教材第二章第2.1节学科数据库基础课题数据库和表的创建与管理序号7时数2授课班级教学目的及要求:1、熟悉命令行方式和图形界面两种MySQL数据库操作方式2、掌握数据库和表的创建、修改和删除教学重点:数据库和表的创建、修改和删除教学难点:SQL命令行实现对数据库和表的操作实验仪器及教具:1)电脑平台及投影仪2)MySQL8.0,NavicatForMySQL软件教学资源列表与访问路径备注职教云:/expertCenter/process/edit.html?courseOpenId=ggz1afatoi9lpuyvgshqiq&tokenId=23v1afat7apbaqlikw2kw在线教学过程(学生自主学习指引)一、教师课堂教学(40分钟)任务1创建与管理数据库1.创建数据库2.管理数据库任务2创建与管理数据库表1.创建数据库表2.管理数据库表任务3图形界面工具创建数据库和表1.图形界面工具简介2.图形界面工具创建数据库二、学生自主学习(35分钟)1、观看微课视频,强化课程中的重点、难点学习(15分钟)要求观看微课视频如下,职教云中设置对学生观看自动考核:2、完成网络课程作业(20分钟)职教云作业:数据库及表的创建与管理三、教学互动(5分钟)对教学过程中和学生自主学习过程中的问题进行总结和答疑。在线辅导与答疑安排利用职教云平台,对教学过程中和学生自主学习过程中的问题进行总结和答疑。时间暂定5分钟。作业中存在的普遍问题其他问题互动课后作业:教材第三章理论练习第一题续页第三章数据定义任务1创建与管理数据库3.1.1创建数据库1.创建数据库使用CREATEDATABASE或CREATESCHEMA命令可以创建数据库。语法格式:CREATE{DATABASE|SCHEMA}[IFNOTEXISTS]db_name[[DEFAULT]CHARACTERSETcharset_name|[DEFAULT]COLLATEcollation_name]2.MySQL中的字符集和校对3.1.2管理数据库1.打开数据库创建了数据库之后使用USE命令可指定当前数据库。语法格式:USEdb_name;2.修改数据库数据库创建后,如果需要修改数据库的参数,可以使用ALTERDATABASE命令。语法格式:ALTER{DATABASE|SCHEMA}[db_name][[DEFAULT]CHARACTERSETcharset_name|[DEFAULT]COLLATEcollation_name]3.删除数据库4.显示数据库命令显示服务器中已建立的数据库,使用SHOWDATABASES命令。语法格式:SHOWDATABASES任务2创建与管理数据库表3.2.1创建数据库表数据类型(1)数值类型(2)字符串类型CHAR和VARCHAR类型BLOB和TEXT类型(3)日期和时间类型2.创建表创建表使用CREATETABLE命令。语法格式:CREATETABLE[IFNOTEXISTS]tbl_name(col_nametype[NOTNULL|NULL][DEFAULTdefault_value]。。。)ENGINE=engine_name 3.2.2管理数据库表1.修改表ALTERTABLE用于更改原有表的结构。例如,可以增加或删减列,创建或取消索引,更改原有列的类型,重新命名列或表,还可以更改表的评注和表的类型。2.复制表3.删除表需要删除一个表时可以使用DROPTABLE语句。4.显示数据表信息(1)显示数据表文件名(2)显示数据表结构任务3图形界面工具创建数据库和表3.3.1图形界面工具简介1.Workbench2.phpMyAdmin3.3.2图形界面工具创建数据库1.进入phpMyAdmin2.创建数据库3.访问数据库4.访问数据表综合实例建立Petstore数据库表3.4.1Petstore数据库表结构分析根据项目1中对Petstore数据的设计,主要数据表的结构如下:1.用户表account用户表account用于记录客户注册的相关信息2.商品分类表category商品过多的时候不便于选择和查询,需要一个商品分类表(category)进行商品的分类管理。3.商品表product商品表(product)用于存放宠物商店出售的商品信息。4.订单表orders客户如果选择了某件商品,确认购买时,就要下订单,订单表记录了客户需要的订单信息。5.选购明细表lineitem如果客户一次购买了几种商品,需要一个订单明细表(lineitem)记录所购商品的数量、单价等信息。3.4.2创建Petstore数据库与表学科数据库基础课题实验四创建“图书管理系统”数据库和表序号8时数2授课班级教学目的及要求:1、了解系统数据库的作用2、掌握使用命令行方式和图形界面管理工具创建数据库和表的方法3、掌握使用命令行方式和图形界面管理工具修改数据库和表的方法4、掌握删除数据库和表的方法教学重点:数据库和表的创建、修改、删除教学难点:数据库和表的创建实验仪器及教具:1)实验室内有交换式局域网2)MySQL8.0,NavicatForMySQL软件教学过程备注实验四创建“图书管理系统”数据库和表一、实验内容图书管理系统中的图书借阅数据库,数据库名为LibraryDB,包含读者表、读者类别表、库存表、图书表、借阅表。1.使用命令行方式完成以下操作(1)创建图书借阅数据库LibraryDB和我的测试数据库MyTest。(2)打开图书借阅数据库LibraryDB。(3)在数据库LibraryDB中创建读者表、读者类别表。(4)显示MySQL服务器中数据库的相关信息。(5)显示LibraryDB数据库中相关表信息。(6)删除MyTest数据库。2.使用MySQL图形界面管理工具操作(1)使用NavicatforMySQL图形界面访问MySQL数据库。(2)用NavicatforMySQL在LibraryDB中创建图书表、库存表和借阅表。二、实验步骤参见教材第三章3.1,3.2节和实训3学科数据库基础课题数据完整性约束序号9时数2授课班级教学目的及要求:1、掌握数据完整性约束的类型2、掌握数据完整性约束的使用方法教学重点:主键约束、替代键约束教学难点:参照完整性约束实验仪器及教具:电脑平台及投影仪,MySQL8.0,NavicatForMySQL软件教学资源列表与访问路径备注职教云:/expertCenter/process/edit.html?courseOpenId=ggz1afatoi9lpuyvgshqiq&tokenId=23v1afat7apbaqlikw2kw在线教学过程(学生自主学习指引)一、教师课堂教学(40分钟)任务2数据完整性约束1.主键约束2.替代键约束3.参照完整性约束4.CHECK完整性约束二、学生自主学习(35分钟)1、观看微课视频,强化课程中的重点、难点学习(15分钟)要求观看微课视频如下,职教云中设置对学生观看自动考核:2、完成网络课程作业(20分钟)职教云作业:完整性约束练习三、教学互动(5分钟)对教学过程中和学生自主学习过程中的问题进行总结和答疑。在线辅导与答疑安排利用职教云平台,对教学过程中和学生自主学习过程中的问题进行总结和答疑。时间暂定5分钟。作业中存在的普遍问题其他问题互动课后作业:教材第三章理论练习第一题续页任务三数据完整性约束3.3.1主键约束主键就是表中的一列或多个列的一组,其值能唯一地标志表中的每一行。通过定义PRIMARYKEY约束来创建主键,而且PRIMARYKEY约束中的列不能取空值。由于PRIMARYKEY约束能确保数据的唯一,所以经常用来定义标志列。当为表定义PRIMARYKEY约束时,MySQL为主键列创建唯一性索引,实现数据的唯一性,在查询中使用主键时,该索引可用来对数据进行快速访问。如果PRIMARYKEY约束是由多列组合定义的,则某一列的值可以重复,但PRIMARYKEY约束定义中所有列的组合值必须唯一。原则上,任何列或者列的组合都可以充当一个主键。但是主键列必须遵守一些规则。这些规则源自于关系模型理论和MySQL所制定的规则:(1)每个表只能定义一个主键。来自关系模型的这一规则也适用于MySQL。(2)关系模型理论要求必须为每个表定义一个主键。然而,MySQL并不要求这样,可以创建一个没有主键的表。但是,从安全角度应该为每个基础表指定一个主键。主要原因在于,没有主键,可能在一个表中存储两个相同的行。因此,两个行不能彼此区分。在查询过程中,它们将会满足同样的条件,在更新的时候也总是一起更新,可能会导致数据库崩溃。(3)表中的两个不同的行在主键上不能具有相同的值。这就是唯一性规则。(4)如果从一个复合主键中删除一列后,剩下的列构成主键仍然满足唯一性原则,那么,这个复合主键是不正确的,这条规则称为最小化规则(minimalityrule)。也就是说,复合主键不应该包含一个不必要的列。(5)一个列名在一个主键的列列表中只能出现一次。3.3.2替代键约束在关系模型中,替代键像主键一样,是表的一列或一组列,它们的值在任何时候都是唯一的。替代键是没有被选做主键的候选键。定义替代键的关键字是UNIQUE。在MySQL中替代键和主键的区别主要有以下几点。(1)一个数据表只能创建一个主键。但一个表可以有若干个UNIQUE键,并且它们甚至可以重合,例如,在C1和C2列上定义了一个替代键,并且在C2和C3上定义了另一个替代键,这两个替代键在C2列上重合了,而MySQL允许这样。(2)主键字段的值不允许为NULL,而UNIQUE字段的值可取NULL,但是必须使用NULL或NOTNULL声明。(3)一般创建PRIMARYKEY约束时,系统会自动产生PRIMARYKEY索引。创建UNIQUE约束时,系统自动产生UNIQUE索引。通过PRIMERYKEY约束和UNIQUE约束可以实现表的所谓实体完整性约束。定义为PRIMERYKEY和UNIQUEKEY的列上都不允许出现的值。3.3.3参照完整性约束定义外键的语法格式reference_definition语法格式如下:REFERENCEStbl_name[(col_name[(length)][ASC|DESC],...)][ONDELETE{RESTRICT|CASCADE|SETNULL|NOACTION}][ONUPDATE{RESTRICT|CASCADE|SETNULL|NOACTION}]3.3.4CHECK完整性约束语法格式为:CHECK(expr)学科数据库基础课题实验五“图书管理系统”数据完整性约束序号10时数2授课班级教学目的及要求:1、掌握数据完整性约束的功能和作用2、掌握创建和管理数据完整性约束方法教学重点:数据完整性约束、数据完整性约束的创建教学难点:外键约束实验仪器及教具:1)实验室内有交换式局域网2)MySQL8.0,NavicatForMySQL软件教学过程备注实验五“图书管理系统”数据完整性约束一、实验内容图书管理系统中的图书借阅数据库,数据库名为LibraryDB,包含读者表、读者类别表、库存表、图书表、借阅表(1)为LibraryDB中读者表指定主键为读者编号。(2)为读者表创建外键,类别号的值必须是读者类别表中类别号列存在的值,删除和修改读者类别号时,读者表中类别号列的数据要随之变化。(3)为借阅表创建外键,读者编号的值必须是读者表中读者编号列存在的值,删除和修改读者表中的读者编号值时,如果借阅表中该读者还有记录,不得删除或修改。(4)为借阅表创建外键,借阅表中的条码列必须是库存表中条码列存在的条码,删除和修改库存表中的条码时,借阅表中条码列的数据也要随之变化。(5)修改读者类别表,可借数量必须在0-30之间。(6)修改库存表,库存状态只能是“在馆”、“借出”、“丢失”三中状态之一。二、实验步骤参见教材第三章3.3节和实训3学科数据库基础课题插入、修改和删除数据序号11时数2授课班级教学目的及要求:1、熟悉命令行和图形界面两种方式对数据库表中数据的操作2、掌握表数据的插入、修改和删除操作教学重点:记录的插入、数据的修改和删除操作教学难点:记录的插入实验仪器及教具:电脑平台及投影仪,MySQL8.0,NavicatForMySQL软件教学资源列表与访问路径备注职教云:/expertCenter/process/edit.html?courseOpenId=ggz1afatoi9lpuyvgshqiq&tokenId=23v1afat7apbaqlikw2kw在线教学过程(学生自主学习指引)一、教师课堂教学(40分钟)任务1插入表数据任务2修改表数据任务3删除表数据二、学生自主学习(35分钟)1、观看微课视频,强化课程中的重点、难点学习(15分钟)要求观看微课视频如下,职教云中设置对学生观看自动考核:2、完成网络课程作业(20分钟)职教云作业:数据操纵三、教学互动(5分钟)对教学过程中和学生自主学习过程中的问题进行总结和答疑。在线辅导与答疑安排利用职教云平台,对教学过程中和学生自主学习过程中的问题进行总结和答疑。时间暂定5分钟。作业中存在的普遍问题其他问题互动课后作业:教材第四章理论练习第一题续页第四章数据操作任务一插入表数据一旦创建了数据库和表,下一步就是向表里插入数据。通过INSERT或REPLACE语句可以向表中插入一行或多行数据。语法格式:INSERT[IGNORE][INTO]tbl_name[(col_name,...)]VALUES({expr|DEFAULT},...),(...),...|SETcol_name={expr|DEFAULT},...REPLACE语句用VALUES()的值替换已经存在的记录。如果在上面的INSERT语句中使用IGNORE关键字,MySQL不会尝试去执行该语句,原有纪录保持不变,但INSERT语句也不会提示出错。另外,MySQL还支持图片的存储,图片一般可以以路径的形式来存储,即插入图片可以采用直接插入图片的存储路径。当然也可以直接插入图片本身,只要用LOAD_FILE函数即可。任务二修改表数据要修改表中的一行数据,可以使用UPDATE语句,UPDATE可以用来修改一个表,也可以修改多个表。修改单个表,语法格式:UPDATE[IGNORE]tbl_nameSETcol_name1=expr1[,col_name2=expr2...][WHEREwhere_definition]修改多个表,语法格式:UPDATE[IGNORE]table_referencesSETcol_name1=expr1[,col_name2=expr2...][WHEREwhere_definition]说明:table_references中包含了多个表的联合,各表之间用逗号隔开。任务三删除表数据1.使用DELETE语句删除数据从单个表中删除,语法格式:DELETE[IGNORE]FROMtbl_name[WHEREwhere_definition]说明:●FROM子句:用于说明从何处删除数据,tbl_name为要删除数据的表名。●WHERE子句:where_definition中的内容为指定的删除条件。如果省略WHERE子句则删除该表的所有行。从多个表中删除行,语法格式:DELETE[IGNORE]tbl_name[.*][,tbl_name[.*]...]FROMtable_references[WHEREwhere_definition]或:DELETE[IGNORE]FROMtbl_name[.*][,tbl_name[.*]...] USINGtable_references [WHEREwhere_definition]说明:对于第一种语法,只删除列于FROM子句之前的表中对应的行。对于第二种语法,只删除列于FROM子句之中(在USING子句之前)的表中对应的行。作用是,可以同时删除多个表中的行,并使用其他的表进行搜索。2.使用TRUNCATETABLE语句删除表数据使用TRUNCATETABLE语句将删除指定表中的所有数据,因此也称其为清除表数据语句。语法格式:TRUNCATETABLEtable-name说明:由于TRUNCATETABLE语句将删除表中的所有数据,且无法恢复,因此使用时必须十分小心。4.4综合实例PetStore数据录入4.4.1PetStore数据表及其内容1.用户表account用户表account用于记录客户注册的相关信息2.商品分类表category商品分类表(category)进行商品的分类管理3.商品表product商品表(product)用于存放宠物商店出售的商品信息4.订单表orders订单表(orders)记录了客户需要的订单信息5.选购明细表lineitem订单明细表(lineitem)记录所购商品的数量、单价等信息4.4.2PetStore数据插入命令1.用户表account2.商品分类表category3.商品表product4.订单表orders5.选购明细表lineitem学科数据库基础课题实验六“图书管理系统”数据操作序号12时数2授课班级教学目的及要求:1、学会使用SQL命令进行数据的录入、修改和删除操作2、学会使用MySQL图形界面工具进行数据的操作教学重点:表记录的插入、修改和删除教学难点:命令方式的表记录插入实验仪器及教具:1)实验室内有交换式局域网2)MySQL8.0,NavicatForMySQL软件教学过程备注实验六“图书管理系统”数据插入与修改一、实验内容1.学生成绩管理系统数据库SchoolDB中各表样本数据如实训4所示,请将数据添加到个表中。2.写出完成以下操作的SQL语句:(1)向studen表中插入一行数据(502001,王晓林,男,2000-02-10,广东,汉,IS2020)。(2)若有一新生刚入学,只收集到该生部分信息如下,其他信息暂时为NULL,请使用SET语句插入一行数据(500102,林丽,女)。(3)将student表中所有学生的地区字段的内容在原来的数据后加上“省或市“三个字。提示:MySQL字符串连接函数concat(串1,串2…)(4)将姓名为“王一敏”的同学的出生日期改为“1998-02-10”,班级号改为AC1302。(5)将student表中1997年以前出生的学生记录删除。二、实验步骤参见教材第四章4.1,4.2,4.3节和实训4。学科数据库基础课题实验七“员工管理系统”数据操纵序号14时数2授课班级教学目的及要求:1、学会使用SQL命令进行数据操纵操作2、学会使用MySQL图形界面工具进行数据操纵操作教学重点:表记录的插入、修改和删除教学难点:命令方式的表记录插入、修改和删除实验仪器及教具:1)实验室内有交换式局域网2)MySQL8.0,NavicatForMySQL软件教学过程备注实验七“员工管理系统”数据操纵一、实验内容用于企业管理的员工管理数据库,数据库名为YGGL,包含员工信息表Employees、部门信息表Departments、员工薪水情况表Salary使用命令行方式完成以下表的数据录入、修改和删除操作部门信息表Departments员工薪水情况表Salaryt员工信息表EmployeesMySQL图形界面管理工具完成以下表的数据数据录入、修改和删除操作部门信息表Departments员工薪水情况表Salaryt员工信息表Employees3、根据教材p77页的内容,修改、删除录入出错的数据二、实验步骤参见教材第74-75页学科数据库基础课题单表查询序号13时数2授课班级教学目的及要求:1、了解数据库的连接、选择和投影2、熟悉select语句的基本结构3、掌握select语句中列的主要操作教学重点:select语句的基本结构教学难点:CASE-END短语实验仪器及教具:电脑平台及投影仪,MySQL8.0,NavicatForMySQL软件教学资源列表与访问路径备注职教云:/expertCenter/process/edit.html?courseOpenId=ggz1afatoi9lpuyvgshqiq&tokenId=23v1afat7apbaqlikw2kw在线教学过程(学生自主学习指引)一、教师课堂教学(40分钟)任务1单表查询1.ELECT语句定义2.选择指定的列3.WHERE子句二、学生自主学习(35分钟)1、观看微课视频,强化课程中的重点、难点学习(15分钟)要求观看微课视频如下,职教云中设置对学生观看自动考核:2、完成网络课程作业(20分钟)职教云作业:单表查询三、教学互动(5分钟)对教学过程中和学生自主学习过程中的问题进行总结和答疑。在线辅导与答疑安排利用职教云平台,对教学过程中和学生自主学习过程中的问题进行总结和答疑。时间暂定5分钟。作业中存在的普遍问题其他问题互动课后作业:教材第五章页理论练习第一题续页第五章数据查询任务一单表查询5.1.1SELECT语句定义语法格式:SELECT[ALL|DISTINCT]select_expr,...[FROMtable_reference[,table_reference]…] /*FROM子句*/[WHEREwhere_definition] /*WHERE子句*/[GROUPBY{col_name|expr|position}[ASC|DESC],... /*GROUPBY子句*/[HAVINGwhere_definition] /*HAVING子句*/[ORDERBY{col_name|expr|position}[ASC|DESC],...]/*ORDERBY子句*/[LIMIT{[offset,]row_count|row_countOFFSEToffset}] /*LIMIT子句*/5.1.2选择列1.选择指定的列2.定义列别名3.替换查询结果中的数据4.计算列值5.消除结果集中的重复行5.1.3WHERE子句基本格式为:WHERE<precdicate>其中,predicate为判定运算,结果为TRUE、FALSE或UNKNOWN。<predicate>:expression{=|<|<=|>|>=|<=>|<>|!=}expression /*比较运算*/|match_expression[NOT]LIKEmatch_expression/*LIKE运算符*/|expression[NOT]BETWEENexpressionANDexpression /*指定范围*/|expressionIS[NOT]NULL /*是否空值判断*/|expression[NOT]IN(subquery|expression[,…n]) /*IN子句*/WHERE子句会根据条件对FROM子句的中间结果中的行一行一行地进行判断,当条件为TRUE的时候,一行就被包含到WHERE子句的中间结果中。1.比较运算2.模式匹配3.范围比较4.空值比较学科数据库基础课题实验七单表查询实践序号14时数2授课班级教学目的及要求:1、掌握SELECT命令单表查询基本结构2、学会使用SQL命令进行单表查询操作教学重点:select语句的基本结构教学难点:聚合函数实验仪器及教具:1)实验室内有交换式局域网2)MySQL8.0,NavicatForMySQL软件教学过程备注实验八单表查询实践一、实验内容对LibaryDB数据库完成以下查询。1.单表查询(1)查询库存表中书号和库存状态列,要求消除重复行。(2)查询读者表中的姓名和单位列,显示的列标题改为姓名显示“name”,单位为“college”。(3)查询图书表中每种书的书名和金额(金额=数量*单价)。(4)查询库存表中员工的条码和库存状态,要求库存状态值为在馆时显示为“1”,借出时显示为“0”丢失时显示为“-1”。2.条件查询(1)查询图书表中数量高于10本的图书的书名、数量和出版社。(2)查询库存表中存放位置中含有‘A’且库存状态为“借出”的图书的信息。(3)查询图书表中财经和文学类图书中数量大于5本的图书信息。(4)查询借阅表中还书日期为空的记录。二、实验步骤参见教材第五章第5.1节学科数据库基础课题多表查询序号15时数2授课班级教学目的及要求:1、掌握多表查询的基本操作2、掌握数据库子查询的方法教学重点:数据库的连接、子查询教学难点:子查询实验仪器及教具:电脑平台及投影仪,MySQL8.0,NavicatForMySQL软件教学资源列表与访问路径备注职教云:/expertCenter/process/edit.html?courseOpenId=ggz1afatoi9lpuyvgshqiq&tokenId=23v1afat7apbaqlikw2kw在线教学过程(学生自主学习指引)一、教师课堂教学(40分钟)任务2多表查询1.FROM子句2.多表连接3.子查询4.联合查询二、学生自主学习(35分钟)1、观看微课视频,强化课程中的重点、难点学习(15分钟)要求观看微课视频如下,职教云中设置对学生观看自动考核:2、完成网络课程作业(20分钟)职教云作业:多表查询三、教学互动(5分钟)对教学过程中和学生自主学习过程中的问题进行总结和答疑。在线辅导与答疑安排利用职教云平台,对教学过程中和学生自主学习过程中的问题进行总结和答疑。时间暂定5分钟。作业中存在的普遍问题其他问题互动课后作业:教材第五章页理论练习第二题续页任务二多表查询5.2.1FROM子句前面介绍了使用SELECT子句选择列,下面讨论SELECT查询的对象(即数据源)的构成形式。SELECT的查询对象由FROM子句指定,其格式为:FROMtable_reference[,table_reference]…其中,table_reference:tbl_name[[AS]tbl_name_alias]/*查询表*/|join_table /*连接表*/5.2.2多表连接1.全连接2.JOIN连接使用JOIN关键字的连接主要分为三种:(1)内连接(2)外连接外连接包括:●左外连接(LEFTOUTERJOIN):结果表中除了匹配行外,还包括左表有的但右表中不匹配的行,对于这样的行,从右表被选择的列设置为NULL。●右外连接(RIGHTOUTERJOIN):结果表中除了匹配行外,还包括右表有的但左表中不匹配的行,对于这样的行,从左表被选择的列设置为NULL。3.子查询(1)IN子查询IN子查询用于进行一个给定值是否在子查询结果集中的判断,格式为:expression[NOT]IN(subquery)其中,subquery是子查询。当表达式expression与子查询subquery的结果表中的某个值相等时,IN谓词返回TRUE,否则返回FALSE;若使用了NOT,则返回的值刚好相反。(2)比较子查询这种子查询可以认为是IN子查询的扩展,它使表达式的值与子查询的结果进行比较运算,格式为:expression{<|<=|=|>|>=|!=|<>}{ALL|SOME|ANY}(subquery)其中,expression为要进行比较的表达式,subquery是子查询。ALL、SOME和ANY说明对比较运算的限制。(3)EXISTS子查询EXISTS谓词用于测试子查询的结果是否为空表,若子查询的结果集不为空,则EXISTS返回TRUE,否则返回FALSE。EXISTS还可与NOT结合使用,即NOTEXISTS,其返回值与EXIST刚好相反。格式为:[NOT]EXISTS(subquery)5.2.4联合查询我们经常会碰到这样的应用,两个表的数据按照一定的查询条件查询出来以后,需要将结果合并到一起显示出来,这个时候就需要用到union关键字来实现这样的功能。其语法格式如下:SELECT语句1UNION[UNION选项]SELECT语句2;学科数据库基础课题实验八多表查询与子查询实践序号16时数2授课班级教学目的及要求:1、掌握多表连接的基本方法2、学会使用SQL命令进行多表查询操作3、学会使用SQL命令进行子查询操作教学重点:多表连接方式、多表查询、子查询教学难点:多表查询、子查询实验仪器及教具:1)实验室内有交换式局域网2)MySQL8.0,NavicatForMySQL软件教学过程备注实验八多表查询与子查询实践一、实验内容对LibaryDB数据库完成以下查询。(1)查询“张小东”的基本情况和图书借阅情况。(2)查询借阅状态为“借阅”的图书的书号和条码。(3)查询每个读者的姓名、单位、可借天数和可借数量。(4)查询每个读者借阅信息,包括读者姓名,书名,借阅日期,借阅状态。(5)查询库存表中每本书的条码,位置和借阅的读者编号,没有借阅的,读者编号用NULL表示。二、实验步骤参见教材第五章5.2节和实训5学科数据库基础课题排序与分类汇总序号17时数2授课班级教学目的及要求:1、掌握数据排序的基本操作2、掌握数据分类汇总的基本操作教学重点:排序、分类汇总教学难点:分类汇总实验仪器及教具:电脑平台及投影仪,MySQL8.0,NavicatForMySQL软件教学资源列表与访问路径备注职教云:/expertCenter/process/edit.html?courseOpenId=ggz1afatoi9lpuyvgshqiq&tokenId=23v1afat7apbaqlikw2kw在线教学过程(学生自主学习指引)一、教师课堂教学(40分钟)任务3排序与分类汇总1.聚合函数2.GROUPBY子句3.HAVING子句4.ORDERBY子句5.LIMIT子句二、学生自主学习(35分钟)1、观看微课视频,强化课程中的重点、难点学习(15分钟)要求观看微课视频如下,职教云中设置对学生观看自动考核:2、完成网络课程作业(20分钟)职教云作业:分类汇总三、教学互动(5分钟)对教学过程中和学生自主学习过程中的问题进行总结和答疑。在线辅导与答疑安排利用职教云平台,对教学过程中和学生自主学习过程中的问题进行总结和答疑。时间暂定5分钟。作业中存在的普遍问题其他问题互动课后作业:教材第五章理论练习第二题续页任务三分类汇总与排序5.3.1.聚合函数(aggregationfunction)下表列出了一些常用的聚合函数:函数名说明COUNT求组中项数,返回int类型整数MAX求最大值MIN求最小值SUM返回表达式中所有值的和AVG求组中值的平均值(1)COUNT函数(2)MAX和MIN(3)SUM函数和AVG函数5.3.2GROUPBY子句GROUPBY子句主要用于根据字段对行分组。例如,根据学生所学的专业对XS表中的所有行分组,结果是每个专业的学生成为一组。GROUPBY子句的语法格式如下:GROUPBY{col_name|expr|position}[ASC|DESC],...[WITHROLLUP]5.3.3HAVING子句使用HAVING子句的目的与WHERE子句类似,不同的是WHERE子句是用来在FROM子句之后选择行,而HAVING子句用来在GROUPBY子句后选择行。例如,查找XSCJ数据库中平均成绩在85分以上的学生,就是在XS_KC表上按学号分组后筛选出符合平均成绩大于等于85的学生。语法格式:HAVINGwhere_definition5.3.4ORDERBY子句在一条SELECT语句中,如果不使用ORDERBY子句,结果中行的顺序是不可预料的。使用ORDERBY子句后可以保证结果中的行按一定顺序排列。语法格式:ORDERBY{col_name|expr|position}[ASC|DESC],...5.3.5LIMIT子句LIMIT子句是SELECT语句的最后一个子句,主要用于限制被SELECT语句返回的行数。语法格式:LIMIT{[offset,]row_count|row_countOFFSEToffset}学科数据库基础课题实验九排序与分类汇总实践序号18时数2授课班级教学目的及要求:1、掌握数据排序的基本方法2、学会使用SQL命令进行数据分类汇总操作教学重点:排序、分类汇总教学难点:分类汇总实验仪器及教具:1)实验室内有交换式局域网2)MySQL8.0,NavicatForMySQL软件教学过程备注实验九排序与分类汇总实践一、实验内容对LibaryDB数据库完成以下查询:(1)按单位统计出该单位的读者人数。(2)查找读者数在2人及以上的部门名称和读者人数。(3)分别统计各出版社的图书的平均单价和总金额。(4)对借阅表先读者编号按再按条码统计图书的借阅次数,并显示小计。(5)将图书表按数量从大到小排序。(6)将借阅表按借阅状态,状态相同再按借阅日期从小到大排序。(7)对借阅表中的读者按类别分组,同类别的再按单位分别统计借阅次数,并按次数从大到小排序。二、实验步骤参见教材第五章5.3节和实训5
学科数据库基础课题数据库视图序号19时数2授课班级教学目的及要求:1、了解数据库视图的基本概念2、熟悉视图的基本操作3、掌握使用视图进行数据的插入、修改和删除教学重点:视图的基本操作教学难点:使用视图进行数据的插入、修改和删除实验仪器及教具:电脑平台及投影仪,MySQL8.0,NavicatForMySQL软件教学资源列表与访问路径备注职教云:/expertCenter/process/edit.html?courseOpenId=ggz1afatoi9lpuyvgshqiq&tokenId=23v1afat7apbaqlikw2kw在线教学过程(学生自主学习指引)一、教师课堂教学(40分钟)任务1创建视图1.视图概念2.创建视图3.查询视图任务2操作视图1.通过视图操作数据图2.修改视图定义3.删除视图二、学生自主学习(35分钟)1、观看微课视频,强化课程中的重点、难点学习(15分钟)要求观看微课视频如下,职教云中设置对学生观看自动考核:2、完成网络课程作业(20分钟)职教云作业:数据视图三、教学互动(5分钟)对教学过程中和学生自主学习过程中的问题进行总结和答疑。在线辅导与答疑安排利用职教云平台,对教学过程中和学生自主学习过程中的问题进行总结和答疑。时间暂定5分钟。作业中存在的普遍问题其他问题互动课后作业:教材第六章理论练习第一题续页任务一创建视图6.1.1视图概念视图是从一个或多个表(或视图)导出的表。视图是数据库的用户使用数据库的观点。视图与表(有时为与视图区别,也称表为基本表——BaseTable)不同,视图是一个虚表,即视图所对应的数据不进行实际存储,数据库中只存储视图的定义,对视图的数据进行操作时,系统根据视图的定义去操作与视图相关联的基本表。6.1.2创建视图创建视图的语法格式:CREATE[ORREPLACE]VIEWview_name[(column_list)]ASselect_statement[WITH[CASCADED|LOCAL]CHECKOPTION]6.1.3查询视图视图定义后,就可以如同查询基本表那样对视图进行查询。任务二操作视图6.2.1通过视图操作数据1.可更新视图2.插入数据3.修改数据4.删除数据6.2.2修改视图定义使用ALTER语句可以对已有视图的定义进行修改。语法格式:ALTERVIEWview_name[(column_list)]ASselect_statement[WITH[CASCADED|LOCAL]CHECKOPTION]6.2.3删除视图语法格式:DROPVIEW[IFEXISTS]view_name[,view_name]...6.3综合实例PetStore数据视图学科数据库基础课题实验十“图书管理系统”数据视图序号20时数2授课班级教学目的及要求:1、掌握视图的功能和作用2、掌握视图的创建和管理方法教学重点:视图的创建、视图管理教学难点:视图管理实验仪器及教具:1)实验室内有交换式局域网2)MySQL8.0,NavicatForMySQL软件教学过程备注实验十“图书管理系统”数据视图一、实验内容对LibraryDB数据库完成以下视图操作。1.创建视图L_view1,包含读者的读者编号、姓名、类名、可借天数和可借数量。2.从L_view1视图中查询学生读者的读者编号、姓名、可借天数和可借数量。。3.创建视图L_view2,包含借阅号,书号,读者姓名,借阅日期,还书日期。4.从L_view2视图中查询还书日期为空的记录。5.创建视图L_view3,包含所有借阅状态为“借阅”或“已还”的记录。在创建视图的时候加上WITHCHECKOPTION子句。6.从L_view3视图中插入一条记录:(100010,411112,2001,2020-10-18,Null,借出)。7.修改L_view2,将借阅号为100001的记录的借阅日期改为系统当天日期。8.删除视图L_view3中还书日期不为空的记录。9.删除视图L_view2和L_view3。二、实验步骤参见教材第六章第6.1,6.2节及实训6学科数据库基础课题索引与分区序号21时数2授课班级教学目的及要求:1、了解索引的分类2、掌握创建和删除索引的方法2、掌握创建和删除分区的方法教学重点:创建与删除索引、创建与删除分区教学难点:创建索引实验仪器及教具:电脑平台及投影仪,MySQL8.0,NavicatForMySQL软件教学资源列表与访问路径备注职教云:/expertCenter/process/edit.html?courseOpenId=ggz1afatoi9lpuyvgshqiq&tokenId=23v1afat7apbaqlikw2kw在线教学过程(学生自主学习指引)一、教师课堂教学(40分钟)任务1索引及其应用1.索引的分类2.创建索引3.删除索引4.索引对查询的影响任务2分区及其应用1.分区的分类2.创建与删除分区二、学生自主学习(35分钟)1、观看微课视频,强化课程中的重点、难点学习(15分钟)要求观看微课视频如下,职教云中设置对学生观看自动考核:2、完成网络课程作业(20分钟)职教云作业:索引与分区三、教学互动(5分钟)对教学过程中和学生自主学习过程中的问题进行总结和答疑。在线辅导与答疑安排利用职教云平台,对教学过程中和学生自主学习过程中的问题进行总结和答疑。时间暂定5分钟。作业中存在的普遍问题其他问题互动课后作业:教材第七章理论练习第一题、第二题续页第七章索引任务一索引及其应用7.1.1索引的分类1.普通索引(INDEX)这是最基本的索引类型,它没有唯一性之类的限制。创建普通索引的关键字是INDEX。2.唯一性索引(UNIQUE)这种索引和前面的普通索引基本相同,但有一个区别:索引列的所有值都只能出现一次,即必须是唯一的。创建唯一性索引的关键字是UNIQUE。3.主键(PRIMARYKEY)主键是一种唯一性索引,它必须指定为“PRIMARYKEY”。主键一般在创建表的时候指定,也可以通过修改表的方式加入主键。但是每个表只能有一个主键。4.全文索引(FULLTEXT)MySQL支持全文检索和全文索引。在MySQL中,全文索引的索引类型为FULLTEXT。全文索引只能在VARCHAR或TEXT类型的列上创建,并且只能在MyISAM表中创建。它可以通过CREATETABLE命令创建,也可以通过ALTERTABLE或CREATEINDEX命令创建。对于大规模的数据集,通过ALTERTABLE(或CREATEINDEX)命令创建全文索引要比把记录插入带有全文索引的空表更快。7.1.2创建索引1.使用CREATEINDEX语句语法格式:CREATE[UNIQUE|FULLTEXT]INDEXindex_nameONtbl_name(col_name[(length)][ASC|DESC],...)2.使用ALTERTABLE语句语法格式如下:ALTERTABLEtbl_nameADDINDEX[index_name](index_col_name,...) /*添加索引*/|ADDPRIMARYKEY[index_type](index_col_name,...)/*添加主键*/|ADDUNIQUE[index_name](index_col_name,...) /*添加唯一性索引*/|ADDFULLTEXT[index_name](index_col_name,...)/*添加全文索引*/3.在创建表时创建索引语法格式:CREATETABLE表名(列名,...|[索引项])其中,索引项:PRIMARYKEY(index_col_name,...) /*主键*/|{INDEX|KEY}[index_name](index_col_name,...) /*索引*/|UNIQUE[INDEX][index_name](index_col_name,...) /*唯一性索引*/|[FULLTEXT][INDEX][index_name](index_col_name,...) /*全文索引*/7.1.3删除索引1.使用DROPINDEX语句删除索引语法格式:DROPINDEXindex_nameONtbl_name7.1.4索引对查询的影响任务二数据库分区7.5.1分区类型MySQL四种类型的分区的特点如下:RANGE
分区:基于一个给定连续区间的列值,把多行分配给分区。LIST
分区:类似于按RANGE分区,区别是它基于列值匹配一个离散值集合中的某个值来进行选择。HASH分区:基于用户定义的表达式的返回值来进行选择,该表达式使用将要插入到表中的这些行的列值进行计算。这个表达式可以包含MySQL中有效的、产生非负整数值的任何表达式。KEY
分区:类似于按HASH分区,区别在于KEY分区只支持计算一列或多列,且MySQL服务器提供其自身的哈希函数。必须有一列或多列包含整数值。1.RANGE分区语法格式:PARTITIONBYRANGE(表达式)(PARTITION分区1VALUESLESSTHAN(值1),….PARITION分区nVALUESLESSTHAN(值n|[MAXVALUE]))2.LST分区语法格式:PARTITIONBYLIST(表达式)(PARTITION分区1VALUE
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 青岛版三年级上册数学试题期中测试卷(含答案)
- 2024年度云南省高校教师资格证之高等教育法规能力测试试卷B卷附答案
- 赣南师范大学《教育社会学》2021-2022学年第一学期期末试卷
- 赣南师范大学《比较教育学》2022-2023学年第一学期期末试卷
- 粤教版2018年小学五年级下册科学全册教案
- 福建师范大学协和学院《学前儿童语言教育》2022-2023学年第一学期期末试卷
- 福建师范大学《中学语文基础名篇选讲》2022-2023学年第一学期期末试卷
- 福建师范大学《学校管理学》2022-2023学年第一学期期末试卷
- 专题71 实验二:力的平行四边形定则和测量动摩擦因数(含答案 )-十年(2014-2023)高考物理真题分项汇编(全国用)
- 福建师范大学《先进功能材料》2023-2024学年第一学期期末试卷
- 2024-2025学年七年级上学期数学期中模拟试卷(苏科版2024)(含答案解析)
- 2024年连南瑶族自治县绿连林业发展有限公司招聘笔试参考题库附带答案详解
- 成立外贸部策划书
- 猜想与假设在高中化学教学中的应用
- 油水井调剖堵水剂
- 网络直播平台的营销策略研究——以起点直播公司为例
- 年处理10000辆报废新能源汽车拆解再生利用项目可行性研究报告-模板
- 供应商送货要求规范
- 教师绩效考核综合评价表.doc
- 投标书标准格式
- 残疾人的心理辅导方案计划
评论
0/150
提交评论