《AI+MySQL数据库案例教程》 教案全套 任务1-11 设计学生选课系统数据库 - -AI+综合项目实训_第1页
《AI+MySQL数据库案例教程》 教案全套 任务1-11 设计学生选课系统数据库 - -AI+综合项目实训_第2页
《AI+MySQL数据库案例教程》 教案全套 任务1-11 设计学生选课系统数据库 - -AI+综合项目实训_第3页
《AI+MySQL数据库案例教程》 教案全套 任务1-11 设计学生选课系统数据库 - -AI+综合项目实训_第4页
《AI+MySQL数据库案例教程》 教案全套 任务1-11 设计学生选课系统数据库 - -AI+综合项目实训_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

博学谷——让IT教学更简单,让IT学习更有效《MySQL数据库案例教程》教学设计课程名称:授课年级:授课学期:教师姓名:年月课题名称任务1设计学生选课系统数据库计划课时4课时教学引入数据库设计首先从分析用户的需求开始,然后通过绘制E-R图,直观呈现数据库设计人员对用户需求的理解,接着将E-R图转换为DBMS支持的数据模型(如关系模型),最后将DBMS支持的数据模型转为计算机能够识别的模型,对数据进行实际存储。通过该任务的实现,熟悉数据库设计的基本步骤,了解数据库技术的发展过程,掌握数据库相关的基本概念。教学目标了解数据管理技术的发展,能够说出数据管理技术每个阶段的特点;掌握数据库技术的基本术语;理解数据库、数据库管理系统和数据库系统的概念;熟悉数据库设计的基本步骤,能够区别不同设计阶段的特点;掌握数据模型的基本概念,能够说出数据模型的分类和常见术语的含义;掌握E-R图的绘制方法;掌握关系模式的设计方法教学重点数据库技术的基本术语数据模型的基本概念,能够说出数据模型的分类和常见术语的含义;E-R图的绘制方法;关系模式的设计方法。E-R图的绘制方法;关系模式的设计方法。教学难点E-R图的绘制方法;关系模式的设计方法。教学方式课堂教学以PPT讲授为主,并结合多媒体进行教学教学过程第1、2课时一、课程引入教师通过对案例的讲解,让学生们认识数据库。二、通过直接导入的方式导入新课数据库技术是计算机应用领域中非常重要的技术,它产生于20世纪60年代末,是数据管理的最新技术,也是软件技术的一个重要分支,用于解决数据的组织和存储以及如何高效地获取和处理数据。今天,信息资源已成为各个部门的重要财富和资源,建立一个满足各级部门信息处理要求的行之有效的信息系统也成为一个企业或组织生存和发展的重要条件。因此,作为信息系统核心和基础的数据库技术得到越来越广泛的应用,越来越多的应用领域采用数据库技术来存储和处理信息资源。特别是随着互联网的发展,广大用户可以直接访问并使用数据库,例如通过网上订购图书、日用品、机票、火车票,通过网上银行转账存款取款、检索和管理账户等。数据库系统的应用已与人们的生活密不可分,其中数据库设计是数据库系统开发中重要的环节,其设计的好坏直接影响后面系统的具体使用情况,那么数据库设计要遵循哪些步骤呢?又如何利用数据库管理系统科学有效地组织、优化、管理、维护和共享信息系统中的海量数据呢?本章将围绕数据库的基础知识进行详细的讲解,包括数据库管理技术的发展、数据库技术的基本术语、数据库设计概述以及数据模型的概念和分类。三、新课讲解教师通过PPT结合实际操作的方式讲解数据库设计概述、数据管理技术的发展、数据库技术的基本术语。1.数据管理技术的发展随着计算机技术的不断发展,数据管理技术主要经历了人工管理、文件系统和数据库系统三个发展阶段。2.数据库技术的基本术语(1)数据(Data)数据是数据库系统中存储的基本对象,是用于描述事物的符号记录。数据的表现形式有多种,可以是数字、文字、图形、图像、声音等,它们都可以数字化形式存入计算机。(2)数据库(DataBase,DB)数据库就是用来存储和管理数据的仓库,是长期存储在计算机内、有组织、可共享的数据集合。这种集合按一定的数据模型(或结构)组织,同时能以安全和可靠的方式进行数据的检索和存储。它本身可以看作电子化的文件柜,用户可以对文件中的数据进行增加、删除、修改、查找等操作。(3)数据库管理系统(databasemanagementsystem,DBMS)数据库管理系统介于应用程序和操作系统之间,是一个管理、控制数据库中各种数据库对象的系统软件,用于建立、查询、更新和维护数据库,同时完成对数据完整性、安全性进行控制的功能。通过数据库管理系统可以科学地组织、存储和维护数据以及高效地获取数据,常见的数据库管理系统有MySQL、Oracle、MicrosoftSQLServer等。(4)数据库系统(DataBaseSystem,DBS)数据库系统是以计算机软硬件为工具,把数据组织成数据库形式并对其进行存储、管理、处理和维护数据的高效能的信息处理系统,例如图书管理系统。数据库系统通常包含计算机硬件、数据库、软件和用户4个部分。3.数据库设计概述数据库设计是指对于一个给定的应用环境,构造并建立数据库,使之能够有效地存储数据,满足各种用户的应用需求。设计一个满足用户需求、性能良好的数据库是数据库系统的核心问题之一。数据库设计一般分为需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库实施和数据库运行与维护6个阶段。四、归纳总结教师回顾本节课所讲的内容,并通过测试题的方式引导学生解答问题并给予指导。五、布置作业教师通过学习通布置本节课作业以及下节课的预习作业。第3、4课时一、复习巩固教师通过上节课作业的完成情况,对学生吸收不好的知识点进行再次巩固讲解。二、通过直接导入的方式导入新课前面介绍了数据库设计概述、数据管理技术的发展、数据库技术的基本术语,本节详细概念模型、逻辑模型。三、新课讲解教师通过PPT结合实际操作的方式讲解概念模型、逻辑模型。1.数据模型的概念和分类(1)概念模型概念模型将现实世界抽象为信息世界,通过绘制E-R图用于信息世界的建模,在本部分内容中,主要讲述概念模型的基本概念、E-R图表示方法和E-R设计步骤。E-R的设计步骤综上所述,E-R的设计步骤如下。①确定实体的数量及类型,如产品、客户、供应商等。②明确实体的属性。如产品的属性有产品号、价格、规格型号。③确定实体间的联系及类型,联系的类型主要有一对一的联系(1:1),一对多的联系(1:N)和多对多的联系(M:N)。④识别联系是否具有属性。实体有属性,联系也可能有属性。⑤画出E-R图。(2)逻辑模型数据库管理系统依据数据模型对数据进行存储和管理,其采用的数据模型是逻辑模型,主要有层次模型、网状模型和关系模型,其中关系模型应用最为广泛,这里会重点进行介绍。随着信息管理内容的不断扩展和新技术的层出不穷,数据库技术面临着前所未有的挑战,面对新的数据形式,人们提出了丰富多样的数据模型,例如面向对象模型。2.在学生管理系统中,有四个实体及属性分别是:学生(学号、姓名、班级)、课程(课程编号、课程名称、院系代码)、教师(教师工号、姓名、所属部门)、院系(院系代码、院系名称、负责人)。这四个实体之间存着如下联系。(1)一个学生可以选修多门课程,一门课程也可以被多个学生选修,是多对多联系。学生选修课程后,会有对应课程的成绩。(2)一个教师可以讲授多门课程,一门课程也可以由多个教师讲授,是多对多联系。(3)一个院系可以拥有多个学生,但一个学生只能属于一个院系,是一对多联系。(4)一个院系或部门可以拥有多个教师,但一个教师只能属于一个院系或部门,是一对多联系。四、归纳总结教师回顾本节课所讲的内容,并通过测试题的方式引导学生解答问题并给予指导。五、布置作业教师通过学习通布置本节课作业以及下节课的预习作业。教学后记《MySQL数据库案例教程》教学设计课程名称:授课年级:授课学期:教师姓名:年月课题名称任务2安装与配置数据库软件计划课时4课时教学引入在任务1中,以“学生管理系统”为例完成了数据收集、设计E-R图、确定关系模式,并得到了数据库的逻辑结构,接下来就要创建学生管理数据库了,而在创建数据库之前,首先要安装与配置数据库管理系统,在本书中,选择了深受广大用户青睐的MySQL作为学习过程中要使用的数据库管理系统,通过安装MySQL,熟悉其工作环境,掌握MySQL环境的配置,掌握启动和停止MySQL服务的方法、登录和退出MySQL服务器的方法,了解常用的关系型数据库管理系统和特点,了解MySQL的特点。教学目标了解常用的关系型数据库管理系统;了解MySQL的特点;熟悉MySQL的安装过程和工作环境;掌握MySQL的安装和环境配置过程;掌握启动和停止MySQL服务的方法;掌握登录和退出MySQL服务的方法。教学重点掌握MySQL的安装和环境配置过程;掌握启动和停止MySQL服务的方法;掌握登录和退出MySQL服务的方法。教学难点MySQL的安装和环境配置过程教学方式课堂教学以PPT讲授为主,并结合多媒体进行教学教学过程第1、2课时一、复习巩固教师通过上节课作业的完成情况,对学生吸收不好的知识点进行再次巩固讲解。二、通过直接导入的方式导入新课数据库管理系统非常多,它们支持不同的数据模型,通常使用支持关系模型的关系型数据库管理系统,本章将从介绍常用的关系型数据库管理系统开始,主要介绍MySQL数据库管理系统的安装与环境配置、图形化客户端工具Navicat的安装和激活。三、新课讲解1.常见的关系型数据库管理系统2.MySQL的安装与配置(1)下载MySQL安装包①访问官网,进入MySQLDownloads页面,向下滚动页面,找到“MySQLCommunity(GPL)Downloads”超链接②打开下载页面后,单击“MySQLInstallerforWindows”超链接③打开“MySQLInstallerforWindows”页面后,点击“Archives”超链接④进入“Archives”页面后,从“ProductVersion”后面的下拉列表框中选择8.0.43,从“OperatingSystem”后面的下拉列表框中选择MicrosoftWindows(默认),单击第2个“Windows(x86,32-bit),MSIInstaller”右侧的“Download”按钮,⑤下载成功后,即可得到安装程序“mysql-installer-community-.msi”。(2)安装MySQL(3)配置环境变量3.图形化客户端工具NavicatNavicatforMySQL(简称Navicat)是一个桌面版MySQL数据库管理和开发工具,和微软公司的SQLServer管理器很像,易学易用。Navicat使用图形化的用户界面,让用户使用和管理起来更为轻松其支持中文,提供免费版本,被公认为全球最受欢迎的数据库前端用户界面工具,这也是本书使用的图形化管理工具,它可以用来对本机或远程的MySQL、SQLServer及Oracle等数据库进行管理及开发。4.MySQL的安装与配置(1)双击下载的安装程序,即可打开“MySQLInstaller”选项卡,在左侧的“ChoosingaSetupType”选择安装类型界面中,点击最后的“Custom”选项,然后点击“Next”按钮,(2)进入到“SelectProducts”选择产品界面中,在“AvailableProducts”列表框中,首先依次单击“MySQLServers”/“MySQLServer”/“MySQLServer8.0”,然后选择“MySQLServer8.0.43-X64”选项,最后单击界面中部的右箭头按钮,(3)此时“ProductsToBeInstalled”列表框中多了“MySQLServer8.0.43-X64”选项,(4)选中“ProductsToBeInstalled”列表框中的“MySQLServer8.0.43-X64”选项,点击界面下方新出现的“AdvancedOption”超链接(见图2-9),然后在打开的“AdvancedOptionsforMySQLServer8.0.43”对话框中,分别设置MySQL的InstallDirectory(安装路径)和DataDirectory(数据路径),单击“OK”按钮,返回到“SelectProducts”选择产品界面中,最后单击“Next”按钮(5)打开“Installation”安装界面,单击“Execute”按钮,安装程序自动安装MySQLServer8.0.43,安装完成后单击“Next”按钮(6)打开“ProductConfiguration”产品配置界面,单击“Next”按钮(7)打开“TypeandNetworking”类型和网络设置界面,保持默认设置,单击“Next”按钮,(8)打开“AuthenticationMethod”身份验证方法设置界面,保持默认设置,单击“Next”按钮(9)打开“AccountsandRoles”用户和角色设置界面,设置账户密码,在“MySQLRootPassword”和“RepeatPassword”编辑框中输入相同的密码,单击“Next”按钮(10)打开“WindowsService”服务设置界面,保存默认设置,单击“Next”按钮(11)打开“ServerFilePermissions”服务器文件权限设置界面,保存默认设置,单击“Next”按钮(12)打开“ApplyConfiguration”应用配置界面,单击“Execute”按钮进行配置,配置完成后单击“Finish”按钮(13)回到“ProductConfiguration”产品配置界面后,单击“Next”按钮,然后打开“InstallationComplete”安装完成界面(14)按组合键“Ctrl+Alt+Del”打开任务管理器窗口,若能找到进程“mysqld.exe”,则表示MySQL程序安装成功四、归纳总结教师回顾本节课所讲的内容,并通过测试题的方式引导学生解答问题并给予指导。五、布置作业教师通过学习通布置本节课作业以及下节课的预习作业。第3、4课时一、复习巩固教师通过上节课作业的完成情况,对学生吸收不好的知识点进行再次巩固讲解。二、通过直接导入的方式导入新课前面介绍了MySQL数据库管理系统的安装与环境配置、图形化客户端工具Navicat的安装和激活,本节详细介绍图形化客户端工具Navicat、MySQL服务的启动和停止。三、新课讲解1.图形化客户端工具NavicatNavicatforMySQL(简称Navicat)是一个桌面版MySQL数据库管理和开发工具,和微软公司的SQLServer管理器很像,易学易用。Navicat使用图形化的用户界面,让用户使用和管理起来更为轻松其支持中文,提供免费版本,被公认为全球最受欢迎的数据库前端用户界面工具,这也是本书使用的图形化管理工具,它可以用来对本机或远程的MySQL、SQLServer及Oracle等数据库进行管理及开发。Navicat是一套快速、可靠且价格相宜的数据库管理工具,专为简化数据库的管理及降低系统管理成本而设,其设计符合数据库管理员、开发人员及中小企业的需要。Navicat为数据库管理、开发和维护提供了直观而强大的图形界面,提供了一组全面的工具,极大地方便了数据库的操作与管理。因此,有必要掌握Navicat图形化管理工具的使用方法。2.MySQL服务的启动和停止使用MySQL创建数据库之前,首先要注册、启动MySQL服务,在本节中,主要讲述MySQL的初始化、MySQL服务的注册、启动和停止。(1)初始化MySQL点击开始菜单,选择“命令提示符”,打开黑框,在黑框中敲入“mysqld--initialize-insecure”,回车,稍微等待一会,如果出现没有出现如图2-31的报错信息,则证明data目录初始化没有问题,此时再查看MySQL目录下已经有data目录生成。(2)注册MySQL服务首先在“命令提示符”的黑框里输入“mysqld-installMySQL80”(若是MySQL8.0.x之前的版本,命令后面不用加服务的名称),然后回车,若出现“Theservicealreadyexists!”,则证明计算机上已经安装好了MySQL服务了,并且还指定了所在的安装路径。(3)启动MySQL服务可以采用两种方式来启动MySQL服务,一种是在“命令提示符”中,另一种是在Windows操作系统4.停止MySQL服务同样,也可以采用上述两种方式停止MySQL服务,具体介绍如下。①在“命令提示符”中停止MySQL服务在“命令提示符”的黑框里输入“netstopMySQL80”,(通常netstartmysql),然后回车,就会停止MySQL服务②在“服务”窗口中停止MySQL服务首先右键“此电脑”→“管理”,双击“服务和应用程序”→“服务”,打开Windows操作系统的“服务”窗口,然后在“名称”中找到“MySQL80”,如图2-39所示,最后右键“MySQL80”→“属性”,在“属性”窗口中“启动类型”选“自动”或“手动”,然后点击“停止”按钮即可的“服务”窗口中。4.MySQL的登录与退出(1)修改默认账户密码在“命令提示符”黑框里敲入“mysqladmin-urootpassword1234”,如图2-43所示,这里的“1234”就是指默认管理员(即root账户)的密码,可以自行进行修改2.登录MySQL在“命令提示符”黑框里敲入“mysql-uroot-p1234”,然后回车,如图2-44所示,若左下角为“mysql>”,则登录成功。(2)退出MySQL在“命令提示符”中输入“quit”或“exit”,回车后就可以退出MySQL了(3)卸载MySQL若不想使用MySQL了,可以进行卸载。四、归纳总结教师回顾本节课所讲的内容,并通过测试题的方式引导学生解答问题并给予指导。五、布置作业教师通过学习通布置本节课作业以及下节课的预习作业。教学后记《MySQL数据库案例教程》教学设计课程名称:授课年级:授课学期:教师姓名:年月课题名称任务3创建学生选课系统数据库与表计划课时10课时教学引入在安装MYSQL及第三方图形可视化工具Navicat,并对MYSQL运行环境初始化和正确调试后,进入数据库开发流程。首先要创建数据库,第一步是定义数据库名称,应遵循唯一性、易读性和书写规范的原则。其次是对数据库进行管理,即针对数据库的一些基本操作,主要包括查看、选取、修改和删除。创建完数据库需进一步对存储在里面的表格操作,具体涉及到数据表的创建、表结构修改和表的删除。教学目标掌握SQL语言的分类;熟悉数据类型并会使用;掌握使用SQL语句对数据库的创建、查看、选取、修改和删除操作;掌握使用SQL语句对数据表的创建、修改和删除操作;掌握创建表约束的方法;掌握Navicat工具的使用方法和技巧。教学重点掌握使用SQL语句对数据库的创建、查看、选取、修改和删除操作;掌握使用SQL语句对数据表的创建、修改和删除操作;掌握创建表约束的方法;教学难点掌握使用SQL语句对数据库的创建、查看、选取、修改和删除操作;掌握使用SQL语句对数据表的创建、修改和删除操作;掌握创建表约束的方法;教学方式课堂教学以PPT讲授为主,并结合多媒体进行教学教学过程第1、2课时一、复习巩固教师通过上节课作业的完成情况,对学生吸收不好的知识点进行再次巩固讲解。二、通过直接导入的方式导入新课数据库和数据表是数据库管理系统中两个核心的概念,它们的操作任务涵盖了数据的存储、管理、处理及保护等多个方面。三、新课讲解SQL(StructuredQueryLanguage)即结构化查询语言,是一种用于管理关系型数据库系统的标准化语言。允许用户对数据库执行各种任务,包括创建和管理数据库对象(例如视图和索引)、插入、更新和删除数据以及执行查询以检索数据。SQL是高级的非过程化编程语言,不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,书写出来的SQL语句形式简单、语言简洁并且可以嵌套,具有极大的灵活性和强大的功能。SQL语言根据其功能和应用领域的不同,可以分为以下几类:1.数据定义语言(DDL,DataDefinitionLanguage):用于定义数据库、数据表、索引、视图等结构,并对其进行结构上的修改或删除。主要命令包括CREATE、ALTER、DROP。2.数据操纵语言(DML,DataManipulationLanguage):用于对数据表中的具体数据进行操作。主要命令包括INSERT、UPDATE、DELETE,分别用于数据插入、数据更新和数据删除。3.数据查询语言(DQL,DataQueryLanguage):主要用于从数据库中检索所需的数据。核心命令是SELECT,允许用户根据特定条件过滤数据,排序结果集以及执行数据聚合操作。4.数据控制语言(DCL,DataControlLanguage):用于控制数据库用户的访问权限和安全性。主要命令包括GRANT、REVOKE,用于授权和撤销用户的访问权限。此外,还有一些用于管理数据库事务的语句,如BEGINTRANSACTION(或简写为BEGIN)、COMMIT和ROLLBACK,分别用于开始、提交和回滚事务。这些语句在数据库事务管理中发挥着重要作用。SQL语言是一种强大且灵活的数据库管理语言,通过学习和掌握DDL、DML、DQL和DCL等不同类型的SQL语句,用户可以更有效地管理和操作关系型数据库系统。SQL语句的书写规则旨在提高代码的可读性、可维护性和执行效率。以下是一些关键的SQL语句书写规则:(1)大小写规范:SQL语句不区分大小写,但为了提高可读性,通常建议将关键字大写,如表名、列名等小写,保留字(如SELECT,INSERT,UPDATE等)也应大写,且不应使用缩写。(2)格式化:SQL语句可以写在一行或多行上,但为了提高可读性,通常建议将每个子句或逻辑部分单独占一行,使用适当的缩进和空格来区分不同的子句和逻辑部分。(3)结束符:SQL语句以英文分号结尾,表示语句的结束,分号应放在最后一个子句的后面,即使它与子句不在同一行。(4)命名规范:数据库、表、列等对象的名称应简洁明了,且符合数据库的命名规范,避免使用空格、特殊字符或保留字作为名称,可以使用下划线(_)作为分隔符来增强可读性。遵循这些书写规则可以帮助开发人员编写更清晰、更易于理解和维护的SQL语句。同时,也有助于减少错误和提高代码的可读性。2.使用CREATEDATABASE语句创建数据库语法格式:CREATEDATABASE数据库名[characterset<字符集名>COLLATE<排序规则名>];在数据库设计和命名时,合理的命名约定不仅有助于提高代码的可读性和可维护性,还能减少错误和混淆。以下是一些在数据库取名时应该注意的要点:(1) 简洁明了,意义明确;(2) 不能和已经存在的数据库重名;(3) 避免使用关键字;(4) 不得使用数字和$符号开始;(5) 长度小于128位。在书写SQL语句时,每两个单词之间都有一个空格。例如,下面的是分隔和未分割的SQL语句。CREATEDATABASExxxy;(正确)CREATEDATABASExxxy;(错误)CREATEDATABASExxxy;(错误)3.查看数据库语法格式:SHOWDATABASES[LIKE‘模糊匹配的条件’];使用SHOW命令来对现有的数据库进行查看,LIKE用来匹配指定的数据库名称。LIKE是MYSQL的关键字,它有两个通配符‘%’和‘_’,其中%表示任意字符,_相当于一个占位符。例如:查看所有数据库:SHOWDATABASES;查看‘my’开头的数据库:SHOWDATABASESLIKE‘MY%’;查看‘my’开头且有3位字符的数据库:SHOWDATABASESLIKE‘MY_’;4.选取数据库当用户操作时,需要先选择要操作的数据库。语法格式USEDATABASE数据库名;5.修改数据库在MYSQL数据库中,用户不能修改数据库的名称,只能修改其字符集和排序规则,使用到的命令动作是ALTER。语法格式ALTERDATABASE数据库名CHARACTERSET<字符集名>COLLATE<排序规则名>;6.删除数据库删除数据库是一个非常重要的操作,因为它会永久删除该数据库中的所有数据,并且无法撤销。因此,在执行此操作之前,请务必确保已经备份了所有重要的数据,并且确实需要删除该数据库。语法格式DROPDATABASE数据库名;四、归纳总结教师回顾本节课所讲的内容,并通过测试题的方式引导学生解答问题并给予指导。五、布置作业教师通过学习通布置本节课作业以及下节课的预习作业。第3、4课时一、复习巩固教师通过上节课作业的完成情况,对学生吸收不好的知识点进行再次巩固讲解。二、通过直接导入的方式导入新课数据类型(datatype)是指系统中所允许的数据的类型。MYSQL数据类型定义了列中可以存储什么类型的数据。数据表中的每一列都应该有相应且恰当的数据类型,如果使用错误的数据类型可能会严重影响应用程序的功能和性能,所以在设计表时,应该特别重视数据列所用的数据类型。新课讲解1.整数类型整数类型用来存放没有小数部分的数字。只要是能用整数来表示的数据(如家庭人口数或者库存量),都可以用一个整型来保存。从上表中可以看出,不同类型的整数存储所需的字节数不同,占用字节数量最小的是TINYINT类型,占用字节最大的是BIGINT类型,占用的字节越多的类型所能表示的数值范围越大。2.浮点类型浮点类型,细分为单精度(FLOAT)和双精度(DOUBLE)。FLOAT单精度小数部分能精确到小数点后面6位,DOUBLE双精度小数部分能精确到小数点后的15位。FLOAT单精度内存占4个字节,DOUBLE双精度内存占8个字节,是FLOAT型的两倍,且运算速度也比FLOAT慢得多。虽然DOUBLE型比FLOAT型精度高,但由于占内存更大,运算速度慢,且即使是DOUBLE型依然会存在精度损失的问题,且不会报告任何的错误,也不会有任何的异常产生。如果对数值精确度的要求不太严格,或者因为数值很大,那么浮点类型则是个不错的选择。比如星球距离等类型的数据都很适合使用浮点值来表示。所以如果涉及到小数精确计算的话,通常会用到下边的DECIMAL类型。3.定点类型DECIMAL类型可以保存带有小数部分的精确值,如3.14159、-0.0273或-4.78。这种类型非常适合用来保存像币值之类的数据。整数和DECIMAL类型的值都会被精确地保存起来,不会进行四舍五入,并且关于它们的计算也是精确的。例如:DECIMAL(5,2)表示小数位2位,整数位3位。DECIMAL类型比浮点型计算精度要高,通常使用更少的空间,所以通常我们在设置小数的时候,大多采用DECIMAL类型。4.字符串类型在MySQL数据库中,字符串类型是用于存储文本数据的重要数据类型。MYSQL提供基本的字符串类型,可以存储的范围从简单的一个字符到巨大的文本块和二进制字符。MYSQL中常用的字符串类型包括CHAR、VARCHAR、TINYTEXT、TEXT、MEDIUMTEXT、LONGTEXT、ENUM等,如下表所示。5.日期时间类型MYSQL表示日期的数据类型有5种:YAER、TIME、DATE、DATETIME、TIMESTAME:6.算术运算符算术运算符用于执行数学运算,包括加、减、乘、除和取模等。这些运算符使得MySQL能够处理数值数据,进行基本的数学计算。例如,可以使用加法运算符将两个数值相加,使用除法运算符计算一个数值除以另一个数值的结果。+加法-减法*乘法/除法%取模(求余数)7.比较运算符当使用SELECT语句进行查询时,MYSQL允许用户对表达式左边的操作数和右边的操作数进行比较,比较结果真为1,假为0。=等于<>或!=不等于<小于>大于<=小于等于>=大于等于<>和!=都是不等于<=>NULL安全等于(如果两个值都是NULL,则返回1)8.逻辑运算符逻辑运算符用于组合多个条件,以形成更复杂的逻辑表达式。这些运算符包括逻辑与(AND)、逻辑或(OR)和逻辑非(NOT)等。逻辑运算符使得MySQL能够处理多个条件,并根据这些条件的组合结果来做出判断。例如,可以使用逻辑与运算符来查找同时满足两个条件的记录,使用逻辑或运算符来查找满足其中一个条件的记录。AND逻辑与OR逻辑或NOT逻辑非9.位运算符位运算符是在二进制数上进行计算的运算符。它们对整数的二进制表示进行位级别的操作,包括位与、位或、位异或、位取反、左移和右移等。位运算符在处理低级数据操作、优化性能等方面非常有用。例如,可以使用位与运算符来检查一个整数的特定位是否被设置,使用左移运算符来将一个整数的二进制表示向左移动指定的位数。&位与|位或^位异或~位非<<左移>>右移10.其他运算符除了上述运算符外,MySQL还支持其他类型的运算符,如赋值运算符、BETWEEN运算符、IN运算符、LIKE运算符、ISNULL/ISNOTNULL运算符等。这些运算符在SQL查询中也非常有用,用于执行各种特定的操作。例如,可以使用BETWEEN运算符来查找在某个范围内的记录,使用LIKE运算符来进行模糊匹配,使用ISNULL运算符来检查一个值是否为NULL。=赋值运算符BETWEEN...AND...在某个范围内IN在某个集合中LIKE模糊匹配ISNULL/ISNOTNULL检查是否为NULLMySQL运算符在数据库查询和处理中起着至关重要的作用。它们使得MySQL能够进行各种复杂的数学计算、逻辑判断和数据比较等操作,从而满足用户的数据处理需求。了解这些运算符及其用法有助于编写复杂而高效的SQL查询。11.数字函数12.日期时间函数13.字符串函数14.聚合函数四、归纳总结教师回顾本节课所讲的内容,并通过测试题的方式引导学生解答问题并给予指导。五、布置作业教师通过学习通布置本节课作业以及下节课的预习作业。第5、6课时一、复习巩固教师通过上节课作业的完成情况,对学生吸收不好的知识点进行再次巩固讲解。二、通过需求导入的方式导入新课在创建数据库之后,接下来就要在数据库中创建数据表。所谓创建数据表,指的是在已经创建的数据库中建立新表。创建数据表的过程是规定数据列的属性的过程,同时也是实施数据完整性(包括实体完整性、引用完整性和域完整性)约束的过程。三、新课讲解1.数据表的基本操作本小节将详细介绍数据表结构的基本操作,包含创建表、查看表、修改表和删除表及其数据表的约束操作。(1)添加字段在MYSQL中使用ALTER命令动作修改原有数据表的结构,语法格式如下:ALTERTABLE表名ADD字段名数据类型和长度约束;(2)删除字段删除字段的语法格式如下:ALTERTABLE表名DROP字段名;(3)修改字段数据类型修改字段的数据类型和约束的语法格式如下:ALTERTABLE表名MODIFY字段名数据类型和长度约束;(4)重新命名字段名称重新命名字段名称的语法格式如下:ALTERTABLE表名CHANGE原字段名新字段名数据类型和长度;(5)重新命名表名重新命名表名的语法格式如下:ALTERTABLE表名RENAME新表名;(6)删除表在MySQL中,删除表是指将数据库中的某个表完全删除,包括表的结构和其中的数据。当数据表中存储的是已经不再使用的数据,此时便需要删除旧的表结构。删除表的语法格式如下:DROPTABLE表名;如果想要同时删除多个表,可在表名后再加一个表,中间用逗号隔开即可2.数据表约束以下是对MySQL中常见的数据表约束的详细解释:(1)主键约束(PRIMARYKEY)定义:主键约束用于唯一标识表中的每一行记录。特性:主键约束的列必须唯一且不允许为空。一个表只能有一个主键,但主键可以由多个列组成(复合主键)。作用:确保数据的唯一性和完整性。(2)外键约束(FOREIGNKEY)定义:外键约束用于维护两个表之间的参照完整性。特性:外键约束的列值必须在被引用的表(父表)的主键或唯一键中存在。作用:防止在子表中插入在父表中不存在的记录,从而维护表之间的数据一致性。(3)唯一约束(UNIQUE)定义:唯一约束用于确保表中的某一列或一组列的值具有唯一性。特性:唯一约束允许列值为空,但多个空值不会违反唯一性约束(因为空值在数据库中不被视为相等)。作用:防止表中出现重复的数据值。(4)非空约束(NOTNULL)定义:非空约束用于确保表中的某一列不允许为空值。特性:设置了非空约束的列在插入新记录时必须提供值,否则会导致插入操作失败。作用:防止数据丢失,确保关键数据字段的完整性。(5)自增约束(AUTO_INCREMENT)定义:自增约束用于为表中的新行自动生成唯一递增的整数。特性:通常用于主键列,以确保每行记录都有一个唯一的标识符。作用:简化数据插入操作,确保主键的唯一性。(6)检查约束(CHECK,MySQL8.0.16及更高版本支持)定义:检查约束用于确保表中的列值符合指定的条件。特性:可以在创建表或修改表时定义检查约束,以验证数据格式、范围或其他自定义规则。作用:防止无效数据进入数据库,提高数据质量。(7)其他约束默认值约束(DEFAULT):为列指定默认值,当插入新记录时,如果没有为该列提供值,则使用默认值。空属性(NULL/NOTNULL):指定列是否允许为空值。列描述(COMMENT):为列提供描述性文本,有助于其他开发人员或数据库管理员了解列的用途。这些约束在MySQL数据库管理中起着至关重要的作用,它们共同确保了数据的完整性、一致性和可靠性。在创建或修改表时,应根据实际需求选择合适的约束来限制数据的存储和访问。四、归纳总结教师回顾本节课所讲的内容,并通过测试题的方式引导学生解答问题并给予指导。五、布置作业教师通过学习通布置本节课作业以及下节课的预习作业。第7、8课时一、复习巩固教师通过上节课作业的完成情况,对学生吸收不好的知识点进行再次巩固讲解。二、通过直接导入的方式导入新课前面学习了针对数据库和数据表操作的理论知识,现在要实现数据库中各个表的结构设计,即决定数据表的详细信息,包括表名、列名、数据类型、数据长度、约束等内容。在此直接给出各个数据表结构。三、新课讲解1.使用Navicat对数据库、数据表操作教师通过PPT结合实际操作的方式讲解数据库、数据表的创建、修改和删除操作。2.使用SQL语句对数据库、数据表操作教师通过PPT结合实际操作的方式讲解数据库、数据表的创建、修改和删除操作。四、归纳总结教师回顾本节课所讲的内容,并通过测试题的方式引导学生解答问题并给予指导。五、布置作业教师通过学习通布置本节课作业以及下节课的预习作业。第9、10课时(课后习题、课堂实训)上机一:(课本练习题)形式:单独完成上机二:(课堂实训)形式:单独完成题目:通过创建数据库、数据表,各种数据类型的严格选择,表中各种约束的安全控制,让学生知道MYSQL数据库设计的专业性和规范性,培养学生的职业素养和道德规范。同时在编写SQL语句时,引入编程人员的工匠精神,理解并尊重工匠精神,在学生中发扬工匠精神,为进入软件行业打下坚实基础。请根据本章节所学内容,创建“医院病房管理系统”数据库,具体要求如下:一、实训目的1.熟悉数据库、数据表操作的步骤。2.掌握数据库设计的基本技术。二、实训内容1.“医院病房管理系统”数据库中包含以下数据表,使用SQL语句创建以下数据表。科室:科室代码、科室名、科室地址、科电话号码、医生姓名、科室主任医生:姓名、职称、科室代码、年龄、医生工号。病人:病历号、姓名、性别、诊断、医生工号、病房号。教学后记《MySQL数据库案例教程》教学设计课程名称:授课年级:授课学期:教师姓名:年月课题名称任务4管理学生选课系统数据表计划课时4课时教学引入本章针对数据的操作进行讲解,主要涉及数据的插入、更新和删除。教学目标掌握数据的插入掌握数据的更新掌握数据的删除教学重点掌握数据的插入掌握数据的更新掌握数据的删除教学难点掌握数据的插入教学方式课堂教学以PPT讲授为主,并结合多媒体进行教学教学过程第1、2课时一、复习巩固教师通过上节课作业的完成情况,对学生吸收不好的知识点进行再次巩固讲解。二、通过直接导入的方式导入新课数据在表中是以记录的形式存在的,用户可以通过DML语句对数据进行操作,数据的操作包括插入数据、更新数据和删除数据。三、新课讲解教师通过PPT结合实际操作的方式讲解数据的插入。1.插入数据的概念插入数据是向表内添加记录,数据插入的关键字是INSERT,2.插入数据的方式插入数据的方式有:给表中所有字段插入数据、给表中指定的字段插入数据。(1)给表中所有字段插入数据有两种方式,第一种是把所有的字段名列出来,并相应的列出字段值;第二种是不列出字段名,只列出字段值,语法格式如下:第一种方式:INSERTINTO表名(字段名1,字段名2,,字段名n)VALUES(字段值1,字段值2,,字段值n);第二种方式:INSERTINTO表名VALUES(字段值1,字段值2,,字段值n);(2)给表中指定的字段插入数据指的是给表中指定的字段插入数据,语法格式如下:INSERTINTO表名(字段名1,字段名2,,字段名n)VALUES(字段值1,字段值2,,字段值n);注:当表中的字段设置约束的时候,它会根据约束的不同,字段值也相应的变化。当字段没有设置约束的时候,系统会将字段值设置为NULL;当字段设置自增约束的时候,系统会将字段值自动加1;当字段设置默认约束的时候,系统会给该字段提供一个默认值。(3)同时给表格插入多条数据,它的语法格式如下:INSERTINTO表名(字段名1,字段名2,,字段名n)VALUES(字段值1,字段值2,,字段值n),(字段值1,字段值2,,字段值n),(字段值1,字段值2,,字段值n);(4)将其他表的数据插入到本表中,这是通过关键字INSERT实现的,它的语法格式如下:INSERTINTO表1(字段列表1)SELECT字段列表2FROM表2注:以上语句的含义是,从表2中指定字段的值,插入到了表1的字段列表1中。四、归纳总结教师回顾本节课所讲的内容,并通过测试题的方式引导学生解答问题并给予指导。五、布置作业教师通过学习通布置本节课作业以及下节课的预习作业。第3、4课时一、复习巩固教师通过上节课作业的完成情况,对学生吸收不好的知识点进行再次巩固讲解。二、通过直接导入的方式导入新课前面介绍了数据的插入,本节详细介绍数据的更新和删除。三、新课讲解教师通过PPT结合实际操作的方式讲解。1.更新数据用户给表格录完数据之后,发现出错了,或者后期需要对数据进行更新,此时可以通过UPDATE关键字对表格中的数据进行更新。对于更新数据有两种方式,分别是给表中指定的数据进行更新和给表中所有的数据进行更新。2.给表中指定的数据进行更新给表中指定的数据进行更新,一般会加上WHERE子句来限定修改范围,它的语法格式如下:UPDATE表名SET字段1=值1,字段2=值2,……,字段n=值nWHERE条件限定语句;给表中所有的数据进行更新UPDATE表名SET字段1=值1,字段2=值2,……,字段n=值n注:给表中所有的数据进行更新,意味着表中的每一条记录都会进行修改,所以进行此操作需要谨慎。3.删除数据用户给表格录完数据之后,发现出错了,想要进行删除,此时可以通过DELETE关键字对表格中的数据进行删除。对于删除数据有两种方式,分别是给表中指定的数据进行删除和给表中所有的数据进行删除。(1)删除表中指定的数据给表中指定的数据进行删除,一般会加上WHERE子句来限定修改范围,它的语法格式如下:DELETEFROM表名WHERE条件限定语句;(2)删除表中所有的数据DELETEFROM表名;注:给表中所有的数据进行删除,意味着表格会清空,所以进行此操作需要谨慎。四、归纳总结教师回顾本节课所讲的内容,并通过测试题的方式引导学生解答问题并给予指导。五、布置作业教师通过学习通布置本节课作业以及下节课的预习作业。教学后记《MySQL数据库案例教程》教学设计课程名称:授课年级:授课学期:教师姓名:年月课题名称任务5查询学生选课系统的单表数据计划课时12课时教学引入学习完数据定义语言DDL和数据操纵语言DML两大模块,接下来进入数据查询语言DQL的知识领域。数据查询在MySQL中的重要性体现在它是用户从数据库中检索、分析和处理信息的核心手段,是数据库管理和应用中最为关键和频繁使用的功能之一。MYSQL中可以使用SELECT语句来查询数据。本章将针对使用SELECT实现数据查询进行详细讲解。教学目标掌握指定列和LIMIT极限查询掌握WHERE各种条件筛选查询掌握聚合函数与分组查询的结合使用教学重点简单数据查询带条件数据查询WHERE各种条件筛选查询聚合函数与分组查询的结合使用教学难点WHERE各种条件筛选查询聚合函数与分组查询的结合使用教学方式课堂教学以PPT讲授为主,并结合多媒体进行教学教学过程第1、2课时一、复习巩固教师通过上节课作业的完成情况,对学生吸收不好的知识点进行再次巩固讲解。二、通过直接导入的方式导入新课查询数据是指根据用户和数据库需求使用不同的查询方法来获得不同的数据,SELECT是使用频率最高、最重要的操作。本章内容围绕编写数据查询SQL语句展开,要求学生掌握书写查询语句的语法格式,并在已创建表的基础上执行查询。三、新课讲解教师通过PPT结合实际操作的方式讲解SELECT语法格式。1.SELECT语法格式SELECT查询是SQL(结构化查询语言)中用于从数据库表中检索数据的基本语句。以下是SELECT查询的一般语法格式:SELECT[all|distinct]{*|<字段列名>}FROM<表名>[WHERE<条件表达式>][GROUPBY<分组列>][HAVING<条件表达式>][ORDERBY<排序列>][LIMIT[<起点>,]<行数>];下面是对各个部分的解释:SELECT:指定要检索的列。可以使用逗号分隔多个列名,或者使用星号(*)表示所有列。[DISTINCT]:可选关键字,用于返回唯一不同的值。如果指定了DISTINCT,则查询结果中的重复行将被删除。FROM:指定要查询的表名。[WHERE条件]:可选子句,用于指定过滤条件。只有满足条件的记录才会被包含在查询结果中。[GROUPBY列]:可选子句,用于将结果集按一个或多个列进行分组。通常与聚合函数(如COUNT(),SUM(),AVG(),MAX(),MIN())一起使用。[HAVING条件]:可选子句,用于指定分组后的过滤条件。HAVING子句通常与GROUPBY子句一起使用,以过滤掉不满足条件的分组。[ORDERBY列[ASC|DESC]]:可选子句,用于对查询结果进行排序。可以按一个或多个列进行排序,并指定升序(ASC,默认)或降序(DESC)。[LIMIT数量]:可选子句,用于限制返回的记录数。可以指定一个数字来限制结果集中的行数。注意:此语法格式较为复杂,但格式中的“[]”部分都是可以省略的,所以初学者可以先去掉所有带“[]”的查询子句,从最简单的查询开始学起。格式中的子句的位置不可以改变,否则会有语法错误。2.简单查询(1)所有列查询在SQL中,要从数据表的所有列中检索数据,可以使用SELECT语句,MYSQL提供了2种方法查询表中的所有字段。语法格式如下:SELECT*FROM表名;SELECT字段1,字段2……字段nFROM表名;(2)指定列查询不同于所有列数据查询,指定列数据查询意思是根据用户或者数据库需求,只返回某张表中的个别字段,而不用把表中的所有字段都查询出来。语法格式如下:SELECT字段1,字段2FROM表名;3.DISTINCT语句在SELECT语句执行时,如果表中的某些字段没有唯一性约束,那么这些字段就可能存在重复值。为了实现查询不重复的数据,MYSQL提供了DISTINCT关键字。DISTINCT关键字的主要作用就是用于返回唯一不重复的记录,当在SELECT语句中使用DISTINCT关键字时,查询结果将只包含不重复的值。具体来说,DISTINCT关键字通过比较表中指定列的值,去除重复的记录,只保留唯一的记录。这对于从表中获取唯一的值列表非常有用。例如,如果有一个包含客户信息的表,并且想要获取所有不重复的城市列表,可以使用“SELECTDISTINCTCityFROMCustomers;”这样的查询语句。需要注意的是,DISTINCT关键字只能应用于SELECT语句,不能用于INSERT、UPDATE或DELETE语句。同时,当应用于多个列时,DISTINCT关键字会考虑这些列的组合是否唯一,如果多列组合在一起产生了不同的结果,那么这些行也将被视为不同,并且不会被去重。4.LIMIT语句在MySQL中,LIMIT语句的主要作用是限制查询结果集的数量。它允许你指定返回的记录数量,以及从哪一条记录开始返回,这对于优化查询性能或仅获取结果集的一部分数据非常有用。具体来说,LIMIT语句的作用包括:(1)限制返回的记录数:通过指定一个数字,你可以限制查询返回的记录数量。这对于大数据集效果更为显著,因为它可以减少网络传输的数据量,并加快查询速度。(2)优化性能:在不需要返回整个结果集的情况下,使用LIMIT可以减少数据库处理的数据量,从而提高查询性能。(3)部分数据检索:有时可能只对结果集的前几条或特定范围内的记录感兴趣。使用LIMIT可以轻松地检索这些记录,而无需处理整个结果集。需要注意的是,LIMIT语句通常与ORDERBY子句一起使用,以确保返回的记录按特定顺序排列。LIMIT语句是MySQL中一个非常有用的功能,它可以帮助用户更有效地管理和检索数据。LIMIT子句可以接受一个或两个参数,具体用法如下:(1)不指定初始位置SELECT字段1,字段2,...FROM表名LIMITrow_count;row_count:要返回的记录数。例如,LIMIT5表示返回前5条记录。(2)指定初始位置SELECT字段1,字段2,...FROM表名LIMIToffset,row_count;offset:要跳过的记录数(从0开始)。row_count:要返回的记录数。例如,LIMIT10,5表示跳过前10条记录,然后返回接下来的5条记录。5.AS关键字教师通过PPT结合实际操作的方式讲解通过AS关键字设置别名。在MySQL中,AS关键字用于为表或列设置别名。别名可以使查询结果更易于理解和引用,尤其是在涉及多个表或复杂计算时。以下是AS关键字设置别名的详细用法:(1)为列设置别名若想要为查询结果中的某一列设置别名时,可以在列名后使用AS关键字,然后跟上定义的别名。别名在查询的其余部分以及结果集中都可以使用。以下是AS关键字设置别名的语法格式:SELECT字段名AS别名FROM表名;(2)为表设置别名在为表设置别名时,AS关键字也是可选的,但通常都会使用它来提高可读性。别名在查询的JOIN子句、WHERE子句以及SELECT子句中都可以使用。语法格式如下:SELECT表的别名.字段名FROM原表名AS表的别名;四、归纳总结教师回顾本节课所讲的内容,并通过测试题的方式引导学生解答问题并给予指导。五、布置作业教师通过学习通布置本节课作业以及下节课的预习作业。第3、4课时一、复习巩固教师通过上节课作业的完成情况,对学生吸收不好的知识点进行再次巩固讲解。二、通过直接导入的方式导入新课如果需要有条件的从数据表中查询数据,可以使用WHERE关键字来指定查询条件。使用WHERE关键字的语法格式如下:SELECT字段1,字段2FROM表名WHERE查询条件;查询条件可以是:带比较运算符和逻辑运算符的查询条件带BETWEENAND关键字的查询条件带ISNULL关键字的查询条件带IN关键字的查询条件带LIKE关键字的查询条件新课讲解1.带比较运算符和逻辑运算符的查询条件教师通过PPT结合实际操作的方式讲解带比较运算符和逻辑运算符的查询条件。运算符在第三章节详细讲过,这里只列举常用的运算符有哪些。比较运算符:>、<、=、>=、<=、!=等,逻辑运算符包含AND(&&)、OR(||)和XOR。单一的比较运算符只能满足单个条件的查询,如需查询多个条件,则需要结合逻辑运算符和比较运算符组合完成。在WHERE关键字后可以有多个查询条件,这样能够使查询结果更加精准。多个查询条件时用逻辑运算符AND(&&)、OR(||)和XOR隔开。AND(&&):满足WHERE后面的所有查询条件,才有查询结果。OR(||):满足WHERE后面的任一查询条件,返回查询结果。XOR:满足WHERE后面的其一查询条件,并不满足另外一个查询条件时,返回查询结果。2.带BETWEENAND关键字的查询条件教师通过PPT结合实际操作的方式讲解带BETWEENAND关键字的查询条件。BETWEENAND运算符在数据库查询中用于选择某个范围内的数据。这个范围是由两个指定的值(value1和value2)定义的,并且这个运算符会包括这两个边界值在内。这个运算符在SQL(结构化查询语言)中广泛使用,特别是在需要从大量数据中筛选出符合特定条件的数据子集时。语法格式如下:SELECT字段FROM表名WHERE字段BETWEENvalue1ANDvalue2;BETWEENAND关键字的作用如下:(1)筛选数据:BETWEENAND允许你根据一个或多个列的值来筛选数据。例如,用户可以根据价格、日期、年龄或其他任何数值或日期类型的列来筛选数据。(2)简化查询:使用BETWEENAND可以使查询更加简洁和易读,尤其是需要选择一系列连续的值时。与多个OR条件相比,BETWEENAND通常更加直观和高效。(3)包含边界值:这个运算符会包括指定的两个边界值value1和value2。这意味着,如果指定的范围是10到20,那么值为10和20的记录也会被包括在内。(4)数据类型兼容性:虽然BETWEENAND主要用于数值和日期类型的数据,但它也可以用于字符类型的数据,尽管这在实践中较少见。对于字符类型,比较是基于字符的字典顺序进行的。(5)结合其他条件:BETWEENAND可以与其他查询条件(如WHERE子句中的其他条件)结合使用,以创建更复杂的查询。3.带ISNULL关键字的查询条件在SQL查询中,ISNULL关键字用于检查某个字段的值是否为空值(NULL)。NULL在数据库中表示未知或缺失的数据,它与0、空字符串('')以及其他任何非NULL值都不同。因此,当需要筛选或查询那些某个字段值为空的记录时,ISNULL关键字就显得尤为重要。语法格式如下:SELECT字段FROM表名WHERE字段ISNULL;ISNULL关键字的作用:(1)筛选空值记录:ISNULL可以用于选择哪些某个字段值为NULL的记录。这在处理不完整或缺失数据时非常有用。(2)确保数据完整性:在某些情况下,字段值为空可能表示数据不完整或存在错误。通过使用ISNULL,可以识别这些记录,并采取相应的措施来修正或完善数据。(3)与其他条件结合使用:ISNULL可以与其他查询条件(如AND、OR等)结合使用,以构建更复杂的查询逻辑。注意事项:(1)NULL值在数据库中具有特殊的含义,它表示未知或缺失的数据。因此,不能使用=、!=或<>等运算符来比较NULL值。(2)在进行字符串连接或数学运算时,任何与NULL值进行的操作都会得到NULL结果。因此,在处理NULL值时需要注意这一点。(3)在创建数据库表时,可以为那些不应该为空的列设置NOTNULL约束。这样,如果尝试插入NULL值,数据库会返回错误。4.带IN关键字的查询条件教师通过PPT结合实际操作的方式讲解带IN关键字的查询条件。在SQL查询中,IN关键字的作用是指定一个值的集合,用于匹配列中的值。若想从表中选取满足某个列中值属于一个特定集合的记录时,IN关键字非常有用。具体来说,IN关键字在WHERE子句中使用,允许指定一个值列表或一个子查询的结果集,并返回那些其列值在该列表或结果集中的记录。5.带LIKE关键字的查询条件教师通过PPT结合实际操作的方式讲解带LIKE关键字的查询条件。在SQL查询中,LIKE关键字用于在WHERE子句中进行模糊匹配。通过结合通配符(通常是百分号%和下划线_),可以实现对文本数据的灵活查询。以下是对LIKE关键字及其通配符的详细解释和使用示例:通配符(1)百分号%:代表零个或多个字符。例如,'a%'将匹配以字母"a"开头的任何字符串。(2)下划线_:代表单个字符。例如,'_r%'将匹配第二个字符为"r"的任何字符串。四、归纳总结教师回顾本节课所讲的内容,并通过测试题的方式引导学生解答问题并给予指导。五、布置作业教师通过学习通布置本节课作业以及下节课的预习作业。第5、6课时一、复习巩固教师通过上节课作业的完成情况,对学生吸收不好的知识点进行再次巩固讲解。通过直接导入的方式导入新课查询数据是指根据用户和数据库需求使用不同的查询方法来获得不同的数据,SELECT是使用频率最高、最重要的操作。本章内容围绕编写数据查询SQL语句展开,要求学生掌握书写查询语句的语法格式,并在已创建表的基础上执行查询。三、新课讲解1.聚合函数查询(1)COUNT():用于计算查询结果集中行的数量。可以计算所有行,也可以计算特定列中非NULL值的数量。(2)SUM():用于计算查询结果集中某列的数值总和。通常与数值列一起使用,并返回该列所有值的总和。(3)AVG():用于计算查询结果集中某列的数值平均值。通过对指定列的所有值求和,然后除以值的数量来计算平均值。(4)MIN():用于找出查询结果集中某列的最小值。(5)MAX():用于找出查询结果集中某列的最大值。聚合函数查询的基本语法如下:SELECTaggregate_function(column_name)ASalias_nameFROMtable_nameWHEREcondition;其中,aggregate_function是要使用的聚合函数(如COUNT、SUM、AVG、MIN、MAX等),column_name是要对其应用聚合函数的列名,alias_name是返回结果的别名(可选),table_name是要查询的表名,condition是可选的查询条件。2.分组查询其基本语法如下。SELECTcolumn1,aggregate_function(column2)FROMtable_nameWHEREconditionGROUPBYcolumn1;其中,column1是要根据其值进行分组的列,aggregate_function是要对每个分组应用的聚合函数,column2是要对其应用聚合函数的列,table_name是要查询的表名,condition是可选的查询条件。分组查询的注意事项:(1)SELECT列表中的列:在SELECT列表中,除了聚合函数的结果外,只能包含GROUPBY子句中指定的列。如果在SELECT中引用了未在GROUPBY中列出的列,那么该列的值将是该分组中第一个遇到的值(这在某些数据库系统中是允许的,但在其他系统中可能导致错误)。(2)性能问题:分组查询可能会对大型数据集产生性能影响。因此,在进行分组查询时,应考虑使用索引或其他性能优化技术来提高查询效率。(3)NULL值处理:在分组查询中,NULL值被视为相同的值进行分组。如果需要特殊处理NULL值,可以使用ISNULL或ISNOTNULL条件进行筛选。四、归纳总结教师回顾本节课所讲的内容,并通过测试题的方式引导学生解答问题并给予指导。五、布置作业教师通过学习通布置本节课作业以及下节课的预习作业。第7、8课时一、复习巩固教师通过上节课作业的完成情况,对学生吸收不好的知识点进行再次巩固讲解。通过需求导入的方式导入新课执行查询语句后,查询到的数据一般都是按照数据最初被添加到表中的顺序来显示。如果想要查询结果的顺序按照用户的需求显示,MYSQL提供了ORDERBY关键字来对查询结果进行排序。三、新课讲解1.排序查询执行查询语句后,查询到的数据一般都是按照数据最初被添加到表中的顺序来显示。如果想要查询结果的顺序按照用户的需求显示,MYSQL提供了ORDERBY关键字来对查询结果进行排序。ORDERBY是SQL查询语句中用于排序的主要子句。它允许用户根据一个或多个列对查询结果进行排序。排序可以是升序(ASC,默认)或降序(DESC)。ORDERBY关键字同样可以对多个字段排序。对多个字段进行排序时,排序的第一个字段必须有相同的值,才会对第二个字段进行排序。如果第一个字段数据中所有的值都是唯一的,MYSQL将不再对第二个字段进行排序。默认情况下,查询数据按照字母升序进行排序(A~Z),但数据的排序并不仅限于此,还可以使用ORDERBY中的DESC对查询结果降序排序(Z~A)。四、归纳总结教师回顾本节课所讲的内容,并通过测试题的方式引导学生解答问题并给予指导。五、布置作业教师通过学习通布置本节课作业以及下节课的预习作业。第9、10课时一、复习巩固教师通过上节课作业的完成情况,对学生吸收不好的知识点进行再次巩固讲解。二、通过直接导入的方式导入新课三、新课讲解知识点1-任务实现教师通过PPT结合实际操作的方式讲解任务实现。四、归纳总结教师回顾本节课所讲的内容,并通过测试题的方式引导学生解答问题并给予指导。五、布置作业教师通过学习通布置本节课作业以及下节课的预习作业。第11、12课时(课后习题、课堂实训)上机一:(课本练习题)形式:单独完成上机二:(课堂实训)形式:单独完成题目:1.“医院病房管理系统”数据库中包含以下数据表,使用SQL语句创建以下数据表。(1)查询科室地址为空值的科室代码。(2)查询年龄在30-40岁之间的医生信息。(3)查询王姓医生的信息。(4)查询所有医生的姓名和职称。(5)查询年龄大于40岁的医生的姓名。(6)查询科室地址包含“市医院”的科室的名称。(7)查询职称为“主任医师”的医生的姓名和年龄。教学后记《MySQL数据库案例教程》教学设计课程名称:授课年级:授课学期:教师姓名:年月课题名称任务6查询学生选课系统的多表数据计划课时4课时教学引入在任务5的学习中,数据查询都是在一张表中进行的,那么,如果要查询计算机科学与工程学院所有学生的学号、姓名、课程名程及成绩,就要涉及4张表,该如何实现呢?教学目标掌握连接查询操作熟悉子查询的概念,能够区分每种子查询的作用;能够使用子查询结合IN、EXISTS、ANY、ALL及比较运算符进行查询教学重点掌握连接查询操作能够使用子查询结合IN、EXISTS、ANY、ALL及比较运算符进行查询教学难点使用子查询结合IN、EXISTS、ANY、ALL及比较运算符进行查询教学方式课堂教学以PPT讲授为主,并结合多媒体进行教学教学过程第1、2课时一、复习巩固教师通过上节课作业的完成情况,对学生吸收不好的知识点进行再次巩固讲解。二、通过直接导入的方式导入新课如果要查询计算机科学与工程学院所有学生的学号、姓名、课程名程及成绩,就要涉及4张表,该如何实现呢?三、新课讲解教师通过PPT结合实际操作的方式讲解。1.连接查询在关系数据库中,如果想要同时获得多张数据表中的数据,可以将多张数据表中相关联的字段进行连接,并对连接后的数据表进行查询,这样的查询方式称为连接查询。连接查询是通过各个表之间的共同列的相关性来查询数据的,进行多表连接查询时首先要在这些表中建立连接,再在连接生成的结果集中进行筛选。在MySQL中,连接查询包括交叉连接查询、内连接查询和外连接查询,本节将对这些连接查询进行讲解。(1)交叉连接查询交叉连接就是将连接的两个表的所有行进行组合,也就是将第一个表的所有行分别与第二个表的每行连接形成一个新的数据行。交叉连接查询后生成的结果集的数据行数等于两个表的行数的乘积,字段个数等于两个表的字段个数的和,其语法格式如下:SELECT*FROM表名1CROSSJOIN表名2;该交叉连接语法也可用隐式表示法替代,即使用逗号分隔两个表,所以上面后两句的可以用如下语句替换。FROM表名1,表名2;下面对上述语法格式进行说明。①经过交叉连接查询后,SELECT后面的字段是两个表的所有字段,因此用通配符“*”表示。②CROSSJOIN是将两个表进行交叉连接的关键字,表名1是第一个表的名字,表名2是第二个表的名字。(2)内连接查询交叉连接查询会返回很多无效的数据,没有参考意义。为了提高查询结果的准确度,可以使用内连接查询限定查询语句的条件,从而去除无效的数据。内连接查询是将一张数据表中的每一行记录按照指定条件与另外一张数据表进行匹配,如果匹配成功,则返回参与内连接查询的两张数据表中符合连接条件的部分,如果匹配失败,则不保留数据。(3)外连接查询外连接查询与内连接不同,其在查询时所用的表有主从之分。进行外连接时,以主表中每行数据去匹配从表中的数据行,如果符合连接条件则将其返回结果集中;如果没有找到匹配行则在结果集中仍然保留主表的行,相对应地,从表中的字段将被填入NULL值。外连接的语法格式如下所示:SELECT*|{字段名1[,字段名2,…]}FROM表名1LEFTJOIN|RIGHTJOIN|FULLJOIN表名2ON表名1.字段名1比较运算符表名2.字段名2;在上述语法中,关键字左边的表(表名1)为左表,右边的表(表名2)为右表,因此,外连接查询只适用于两个表。外连接包括3种类型:左外连接、右外连接和全外连接。四、归纳总结教师回顾本节课所讲的内容,并通过测试题的方式引导学生解答问题并给予指导。五、布置作业教师通过学习通布置本节课作业以及下节课的预习作业。第3、4课时一、复习巩固教师通过上节课作业的完成情况,对学生吸收不好的知识点进行再次巩固讲解。二、通过直接导入的方式导入新课如果要查询计算机科学与工程学院所有学生的学号、姓名、课程名程及成绩,就要涉及4张表,该如何实现呢?三、新课讲解教师通过PPT结合实际操作的方式讲解。1.子查询在多表查询中,有时在执行某个查询的过程中可能会用到另一个查询的结果,此时可以使用子查询实现。由于查询时需要多条SQL语句实现,即在WHERE子句中包含另一个SELECT语句,使用包含在内部的SELECT语句进行的查询称为子查询,同时这种将一个查询嵌套在另一个查询的WHERE子句中的查询也称为嵌套查询,包含子查询的SELECT语句称为父查询。含有子查询的语句执行时由内向

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论