MySQL数据库技术与应用(微课版)教案全套 范瑛 1-6 数据库认知-数据库设计_第1页
MySQL数据库技术与应用(微课版)教案全套 范瑛 1-6 数据库认知-数据库设计_第2页
MySQL数据库技术与应用(微课版)教案全套 范瑛 1-6 数据库认知-数据库设计_第3页
MySQL数据库技术与应用(微课版)教案全套 范瑛 1-6 数据库认知-数据库设计_第4页
MySQL数据库技术与应用(微课版)教案全套 范瑛 1-6 数据库认知-数据库设计_第5页
已阅读5页,还剩191页未读 继续免费阅读

下载本文档

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

文档简介

第3章面向对象(上)备课纸(章)课题:项目模块1数据库认知篇课时教学目的要求:掌握数据库系统的相关概念掌握安装配置数据库的方法和步骤掌握客户端登录数据库的方法和步骤教学重点:掌握关系模型的相关概念掌握安装配置MySQL8的方法和步骤掌握MySQL8服务启动和停止的方式掌握使用客户端登录MySQL8数据库的方法和步骤教学难点:掌握关系型数据库的概念与特点掌握正确使用mysql命令登录MySQL8数据库的方法思政素养要点:养成学习新技术的兴趣和主动性对工作任务综合全面考虑的习惯志存高远、脚踏实地,不畏艰难险阻,勇担时代使命的责任感;项目数据库教学项目:高校教学质量分析管理系统数据库db_teaching实践项目:怡贝银行业务管理系统数据库db_ebank教学方法:讲解、演示、微课、课中课后实训实践教具:理实一体化机房、MySQL8.0安装包课时安排节次内容总课时其中讲授实训课堂作业1任务1认识数据库2任务2安装配置数据库3任务34567

备课纸(节)课题:任务1认识数据库课时教学目的要求:了解和掌握数据库系统的相关概念:数据、数据库、数据库管理系统、数据库系统了解数据库的三级模式结构:外模式、概念模式、内模式了解三级模式间的两层映射:外模式/概念模式映射、概念模式/内模式映射掌握数据模型:层次模型、网状模型、关系模型理解和掌握关系型数据库理解关系运算了解SQL语言教学重点:掌握数据库的体系结构及特点掌握关系型数据库的概念及特点掌握关系运算教学难点:集合运算:合并、交集、求差、笛卡尔积关系运算:选择、投影、连接、除法教具:理实一体化机房课后小结教学过程:引【学生线上微课学习,引出讨论题】在了解数据库系统的体系结构和数据模型等理论知识后,为项目选择一个合适的后台数据库管理系统。导【教师导入任务情境】G-EDU格诺博教育公司开发“高校教学质量分析管理系统”,希望能够为教学质量的各项指标数据,包括学生评教、教师评学、同行及督导专家评价等相关的各类信息实现记录、分析、处理、决策。同时基于大数据分析背景的需要,针对项目数据存储与管理的需求,在认知和分析数据库体系的基础上,为项目的开发甄选适合的后台数据库管理系统。析【教师带动学生】分析任务解决实施的技术要点,精讲任务解决的要点数据库管理技术的发展阶段;数据库系统的相关概念;数据库的体系结构;数据模型;关系型数据库;SQL语言数据管理技术的发展阶段人工管理阶段数据的独立性差,不能共享,冗余度大,数据不能被长期保存。文件系统阶段数据实现了可长期保存,但存在数据独立性差、共享率低、冗余度高的缺点。数据库系统阶段大大减少数据冗余,易扩充,还能更好地保证数据的安全性和完整性数据库系统的相关概念1.数据(Data)描述事物信息的符号称为数据(Data)。2.数据库(Database,DB)数据库就是存储数据的仓库,指长期存储在计算机内的、有结构的、可共享的数据集合。3.数据库管理系统(DatabaseManagementSystem,DBMS)数据库管理系统是位于用户与操作系统之间的数据管理软件,它为用户或应用程序提供访问和管理数据库的方法,包括建立、使用、维护数据库,以及数据收集存储、数据定义、数据操作、数据控制等。4.数据库系统(DatabaseSystem,DB)数据库系统由硬件、软件和数据库用户共同构成。数据库的体系结构1.数据库的三级模式结构(1)外模式外模式又称子模式或用户模式,对应于用户级,面向应用程序,它是某个或某几个用户所看到的数据库的数据视图。(2)概念模式概念模式又称模式或逻辑模式,对应于概念级,面向数据库设计人员,描述数据的整体逻辑结构,是所有用户的公共数据视图(全局视图)。(3)内模式内模式又称存储模式或物理模式,对应于物理级,面向物理上的数据库,反映了数据库系统的存储观。2.三级模式间的两层映射(1)外模式/概念模式映射对于同一个模式可以有任意多个外模式。对于每一个外模式,数据库系统都有一个外模式/模式映射。(2)概念模式/内模式映射数据库中只有一个概念模式和一个内模式,所以概念模式/内模式的映射是唯一的,它定义了数据库的全局逻辑结构与存储结构之间的对应关系。数据模型1.层次模型(HierarchicalModel)层次模型是一种用树形结构描述实体及其之间关系的数据模型。2.网状模型网状模型是一种可以灵活地描述实体及其之间关系的数据库模型,网状模型用有向图结构表示实体类型及实体间联系。3.关系模型关系模型是指用二维表的形式表示实体和实体间联系的数据模型,由行和列组成。关系模型中无论是实体还是实体间的联系均由单一的结构类型“关系”来表示,其操作的对象和结果都是一张二维表。关系型数据库1.关系型数据库关系型数据库,是指采用了关系模型来组织数据的数据库,其以行和列的二维表形式存储数据。关系模型可以简单理解为二维表格模型,那么一个关系型数据库就是由二维表及其之间的关系组成的一个数据组织。2.关系运算关系的基本运算有两类:一类是传统的集合运算(合并、交集、求差、笛卡尔积),另一类是专门的关系运算(选择、投影、连接、除法)。SQL语言SQL(StructuredQueryLanguage结构化查询语言),是关系型数据库语言的标准,是关系型数据库查询语言和程序设计语言。1.数据定义语言(datadefinitionlanguage,DDL)数据定义语言是负责数据结构定义与数据库对象定义的语言,由CREATE、ALTER与DROP三个语法所组成。2.数据操纵语言(DataManipulationLanguage,DML)数据操纵语言是用于数据库操作,对数据库其中的对象和数据执行访问工作的编程语句。主要是以INSERT、UPDATE、DELETE、SELECT对数据的插入、更新、修改、查询4种指令为核心。3.数据控制语言(DataControlLanguage,DCL)数据控制语言主要对用户的访问权限加以控制,以保证系统的安全性,由GRANT、REVOKE对用户的授权和撤销授权,及COMMIT、ROLLBACK对事务的提交和回滚等指令组成。探【教师指导,学生小组讨论本节任务解决方案】高校教学质量分析管理系统数据库作为一个“数据库系统”应用(DBAP),“数据库管理员”(DBA)需要选择合适的“数据库管理系统”(DBMS)。如何选择一个合适的数据库?解【教师指导,学生操作实施解决任务】通过比较各类数据库管理系统的优缺点,最后选择MySQL8作为项目的数据库管理系统。践【学生综合实践,运用本节学习技术完成工作任务单】1.“怡贝银行业务管理系统”数据库db_ebank“数据库认知”实训任务工作单

备课纸(节)课题:任务2安装配置MySQL8数据库课时教学目的要求:了解MySQL数据库了解MySQL8的新特性掌握MySQL8的配置文件的使用方法掌握安装配置MySQL8的步骤掌握启动和停止MySQL8服务的方法教学重点:掌握在Windows、macOS、Linux操作系统下安装配置MySQL8的步骤掌握多种启动和停止MySQL8服务的方法教学难点:能正确在不同操作系统下,安装、配置、启动和停止MySQL8服务器熟悉MySQL8的重要文件所在路径教具:理实一体化机房、MySQL8.0、MySQLWorkbench课后小结教学过程:引【学生线上微课学习,引出讨论题】:怎样安装配置MySQL8数据库?如何启动和停止MySQL8服务?导【教师导入任务情境】:在对数据库有基本认识后,“高校教学质量分析管理系统”的开发最终选择MySQL8作为其后台数据库管理系统。在详细了解MySQL8版本的数据库新特性等一些专业知识后,开始安装并配置MySQL8数据库。析【教师带动学生】分析任务解决实施的技术要点,精讲:任务解决的要点认识MySQL数据库MySQL8的新特性MySQL8的配置文件Windows安装配置MySQL8及服务器的启停MacOS安装配置MySQL8及服务器的启停Linux安装配置MySQL8及服务器的启停一、认识MySQL数据库MySQL是一个体积小、开放源码、成本低的关系型数据库管理系统(RelationalDatabaseManagementSystem,RDBMS)。采用关系数据库标准SQL语言,支持在Windows、MacOS、Linux、UNIX等平台上使用,可移植性好,快速灵活;MySQL作为开源数据库,意味着开发人员可以根据需求自由修改,所采用的社区版和商业版的双授权政策,兼顾了免费使用和付费服务的需求,总体拥有成本低。二、MySQL8的新特性1.默认字符集由latin1变为utf8mb42.MyISAM系统表全部换成InnoDB表3.持久化自增变量4.DDL原子化5.更完善的JSON支持6.更好地索引7.groupby不再隐式排序8.增加角色管理9.新增事务数据字典10.增强资源管理11.支持窗口函数12.支持正则表达式13.增强的MySQL复制三、MySQL8的配置文件MySQL8服务器启动时会读取my.ini配置文件,可以通过操作系统自带的记事本工具打开查看和修改这个文件,达到更改MySQL8服务器配置参数的目的。四、Windows安装配置MySQL8及服务器的启停1.Windows安装配置MySQL82、MySQL8服务的启动和停止启动MySQL服务主要有以下两种方法:第一种:通过Windows服务启动和停止MySQL。通过点击“启动”,“停止”来改变服务状态。第二种:通过命令启动和停止MySQL在命令提示符界面输入“netstartMySQL80"启动MySQL8服务。输入“netstartMySQL80”即停止MySQL服务。五、MacOS安装配置MySQL8及服务器的启停1.MacOS安装配置MySQL82.MySQL服务的启动和停止六、Linux安装配置MySQL8及服务器的启停1.Linux安装配置MySQL82.MySQL服务的启动和停止在CentOS7系统下,MySQL服务的启动只需要在控制台输入如下指令:#systemctlstartmysqld而MySQL服务的停止则只需要在控制台输入如下指令:#systemctlstopmysqld探【学生小组讨论本节任务解决方案】:如何在my.ini配置文件中设置时区参数?解【学生操作实施解决任务】找到并打开my.ini配置文件,找到或添加参数“default-time_zone”,并将该参数的值设置为“+8:00”,如下所示:default-time_zone='+8:00'践【学生综合实践,运用本节学习技术完成工作任务单】1.“怡贝银行业务管理系统”数据库db_ebank“数据库认知”实训任务工作单

备课纸(节)课题:任务3认识命令行与图形化客户端及登录MySQL课时教学目的要求:了解MySQL8的常用命令行客户端了解MySQL8的常用图形化客户端掌握使用命令行客户端登录数据库掌握使用Workbench图形化客户端登录数据库教学重点:掌握使用命令行客户端登录数据库:CMD命令行工具和Command-LineClient工具掌握使用Workbench图形化客户端登录数据库教学难点:熟悉mysql命令及其参数:mysql[-hIP地址][-P端口号]-u用户名-p[密码]正确使用命令和图形化工具登录MySQL服务器教具:理实一体化机房、MySQL8.0、MySQLWorkbench课后小结教学过程:引【学生线上微课学习,引出讨论题】:如何登录到数据库呢?导【教师导入任务情境】:MySQL8数据库安装完毕并启动服务后,需要登录MySQL8服务器才能开始使用其中的数据库资源和创建管理数据库及对象。G-EDU格诺博教育公司开发“高校教学质量分析管理系统”的后台数据库,首先要通过正确的用户名和密码登录MySQL服务器。那么如何登录到数据库呢?析【教师带动学生】分析任务解决实施的技术要点,精讲:任务解决的要点MySQL8的常用命令行客户端MySQL8的常用图形化客户端使用命令行客户端登录/退出MySQL8使用Workbench图形化客户端登录数据库一、MySQL8的常用命令行客户端1.Windows操作系统命令行工具cmdcmd命令提示符是在操作系统中,提示进行命令输入的一种工作提示符。在windows环境下,命令行程序为cmd.exe,是一个32位的命令行程序,微软Windows系统基于Windows上的命令解释程序,类似于微软的DOS操作系统。我们可以借助cmd命令提示符来进入MySQL8以及执行常用的数据库操作。2.MySQL8自带命令行工具Command-LineClientMySQL8.0Command-LineClient是MySQL8数据库自带的一个的SQL命令行工具,与MySQL数据库之间有很好的兼容性,它支持交互式和非交互式两种使用方式:以交互方式使用时,查询结果以ASCII表格显示结果;当以非交互方式使用(例如,作为筛选器)时,结果以制表符分隔的格式显示。二、MySQL8的常用图形化客户端1.MySQLWorkbenchMySQLWorkbench是MySQL8安装包自带的一个面向数据库架构师、开发人员和数据库管理员的可视化工具,它提供了先进的数据库建模、灵活的SQL文本编辑器和全面的管理控制台,可在Windows,Linux和MacOS操作系统上使用。2.NavicatforMySQLNavicatforMySQL是管理和开发MySQL的解决方案,是个商业软件,需要付费使用。它可以用来对本机或远程的MySQL数据库进行管理及开发。3.SQLyogSQLyog是一款图形化界面的MySQL数据库管理工具,试用期过后需要付费试用,由Webyog公司出品。三、使用命令行客户端登录/退出MySQL81.Windows操作系统命令行工具cmd打开cmd命令行工具,输入mysql命令登录数据库服务器,命令语法格式如下:mysql[-hIP地址][-P端口号]-u用户名-p[密码]参数说明:mysql:MySQL服务器的登录命令名。Mysql.exe文件存放在MySQL程序目录的bin文件夹下。-h:指定登录的MySQL服务器地址(域名或IP)。本机地址可用localhost或表示,如果缺省-h参数,表示默认连接本机MySQL服务器。-P:指定连接的端口号。缺省-P参数,表示默认MySQL端口号3306。-u:指定登录的用户名。(-u和用户名之间的空格可以省略)MySQL在安装时,会默认创建一个名为root的超级管理员的用户,拥有最高权限,可以控制整个MySQL服务器和创建设置其它用户。-p:指定登录的密码。如果在登录时不希望密码被直接看到,可以省略“-p”后面的密码,然后回车后会提示输入密码表示使用密码登录到数据。2.MySQL8自带命令行工具Command-LineClient使用操作系统的cmd工具登录MySQL8数据库服务器相对比较麻烦,而且命令中的参数较多难记忆。也可使用对应MySQL8所自带的Command-LineClient工具,简单地只要输入该MySQL8数据库服务器的登录密码,就可很便捷地直接登录了。四、使用Workbench图形化客户端登录数据库1、打开Workbench2、点击需要登录的MySQL数据库3、输入root账户密码,并点击ok按钮确认登录探【学生小组讨论本节任务解决方案】:如何登录到其他电脑上的MySQL数据库?解【学生操作实施解决任务】1.命令行客户端mysql[-hIP地址][-P端口号]-u用户名-p[密码]2.MySQLWorkbench图形化客户端点击“+”按钮,输入新数据库的ip、端口、账户和密码信息践【学生综合实践,运用本节学习技术完成工作任务单】1.“怡贝银行业务管理系统”数据库db_ebank“数据库认知”实训任务工作单备课纸(章)课题:项目模块2数据库管理课时教学目的要求:掌握使用SQL命令与Workbench图形化工具正确创建和维护数据库和数据表掌握使用备份和迁移数据库掌握SQL的DDL与DML语言编写SQL语句对数据进行增、删、改等基本操作教学重点:掌握使用SQL命令与Workbench图形化工具创建和维护数据库和数据表掌握使用SQL命令增、删、改表数据掌握如何设置约束保证数据完整性掌握使用SQLDDL语言操作数据表掌握数据的导入导出、备份和还原以及数据库的迁移教学难点:熟练灵活正确使用SQL增删改命令实现表数据的基本操作正确运用各种约束保证数据完整性正确运用只是备份和迁移数据库思政素养要点:养成注重细节、精益求精的职业操守;对解决问题积极探索、寻求高效、简明、优化手段的工匠精神;保护数据的同时还要认识到片面性问题,用辩证的思维看待事物;项目数据库教学项目:高校教学质量分析管理系统数据库db_teaching实践项目:怡贝银行储蓄信贷业务管理系统数据库db_ebank教学方法:讲解、演示、微课、课中课后实训实践教具:理实一体化机房、MySQL8.0、Workbench课时安排节次内容总课时其中讲授实训课堂作业1任务1创建维护数据库2任务2创建维护数据表3任务3实现数据完整性约束4任务4操作表数据5任务5备份与迁移数据库备课纸(节)课题:任务1创建维护数据库课时教学目的要求:掌握根据需求创建、删除、修改数据库掌握MySQL服务器中数据库构成、查看数据库教学重点:掌握MySQL服务器中的数据库构成掌握创建、删除、修改以及查看当前数据库教学难点:在命令行客户端或MySQLWorkbench图形化客户端,正确创建维护数据库针对需求能确定数据库的字符集和校对集教具:理实一体化机房、MySQL8.0、MySQLWorkbench课后小结教学过程:引【学生线上微课学习,引出讨论题】怎样存储数据?用命令行和图形化工具怎么操作存储数据的需求?导【教师导入任务情境】G-EDU格诺博教育公司开发“高校教学质量分析管理系统”,要将所需管理和分析的原数据能集中共享存放,先为系统创建一个后台数据库db_teaching。若数据库字符集或校对集设置不合适造成数据乱码,可重新修改或删除重建db_teaching数据库。析【教师带动学生】分析任务解决实施的技术要点,精讲任务解决的要点MySQL服务器中的数据库构成根据存放数据需求,确定数据库的字符集和校对集创建数据库查看MySQL服务器中的数据库选择当前数据库修改数据库删除数据库一、MySQL服务器中的数据库构成MySQL服务器中的数据库包括系统数据库和用户数据库。对于用户的自定义应用系统的数据,需要用户创建新的数据库来存放和管理。系统数据库:information_schema主要存储MySQL服务器中所有数据库的信息mysql主要存储MySQL服务器的账户信息、权限信息、时区信息等Perfomance_schema主要用于收集数据库服务器的性能参数SysSys数据库通过视图形式把information_schema和performance_schema联合起来二、MySQL默认字符集的设置修改MySQL支持服务器、数据库、表、列四个层级的字符集和校对集设置使用,可以实现在同一台服务器、同一个数据库、同一个表中使用不同字符集或校对集来混合字符串。【教师举例实操演示】对高校教学质量分析管理系统数据库db_teaching——例1:查看当前MySQL8服务器的字符集变量,设置客户端、服务器、数据库等各级的默认字符集统一为utf8mb4,以避免在转码过程中可能出现的乱码问题。使用“SHOWVARIABLES”命令查看当前MySQL8的字符集变量;mysql>SHOWVARIABLESLIKE'CHARACTER%';(2)命令执行结果可见,当前MySQL8的服务器、数据库的默认字符集是utf8mb4,但其客户端、连接层和查询结果的字符集还是gbk。通过“SET变量名=值”命令更改这三个变量的值:character_set_client、character_set_connection、character_set_results;mysql>SETcharacter_set_client=utf8mb4;mysql>SETcharacter_set_connection=utf8mb4;mysql>SETcharacter_set_results=utf8mb4;【学生课堂实践练习】三、创建数据库MySQL中使用CREATEDATABASE或CREATESCHEMA命令创建数据库,其SQL命令语法格式如下:CREATEDATABASE|SCHEMA[IFNOTEXISTS]数据库名[[DEFAULT]CHARACTERSET|CHARSET字符集[[DEFAULT]COLLATE校对集]];【教师举例实操演示】对高校教学质量分析管理系统数据库db_teaching——例2:创建一个名为test_db1的数据库,采用字符集gb2312和校对集gb2312_chinese_ci。CREATEDATABASEIFNOTEXISTStest_db1CHARSETgb2312;例3:创建一个名为test_db2的数据库,默认MySQL8的字符集utf8mb4及其默认校对集utf8mb4_0900_ai_ci。CREATEDATABASEtest_db2;【学生课堂实践练习】四、查看数据库1.查看MySQL服务器中所有数据库列表SHOWDATABASES;2.查看指定数据库的创建信息SHOWCREATEDATABASE数据库名;五、选择数据库MySQL服务器中存在多个数据库,只有选择某个数据库成为当前数据库后,才能对该数据库以及库中的对象进行操作。其SQL命令语法格式如下:USE数据库名;在用户登录MySQL服务器时也可以直接选择要操作的当前数据库,命令语法格式如下:MYSQL-u用户名-p密码数据库名【教师举例实操演示】对高校教学质量分析管理系统数据库db_teaching——例3:登录MySQL服务器同时选择test_db1为当前数据库,登录后,将当前数据库更换为test_db2。C:\WINDOWS\system32>mysql-uroot-ptest_db1mysql>usetest_db2;Databasechanged【学生课堂实践练习】六、修改数据库在MySQL中,可以对创建了已存在的数据库进行修改,不过对数据库只可以修改相关参数,不能修改数据库名。ALTERDATABASE修改数据库的SQL命令语法格式如下:ALTERDATABASE|SCHEMA[IFNOTEXISTS]数据库名[[DEFAULT]CHARACTERSET|CHARSET字符集[[DEFAULT]COLLATE校对集]];【教师举例实操演示】对高校教学质量分析管理系统数据库db_teaching——例4:修改数据库test_db1的字符集和校对集为MySQL8服务器默认的utf8mb4和utf8mb4_0900_ai_ci。ALTERDATABASEtest_db1CHARSETutf8mb4;【学生课堂实践练习】气、删除数据库在MySQL中,可以通过DROPDATABASE或者DROPSCHEMA语句删除已经存在的数据库。DROPDATABASE|SCHEMA[IFEXISTS]数据库名;【教师举例实操演示】对高校教学质量分析管理系统数据库db_teaching——例5:删除数据库test_db1。DROPDATABASEtest_db1;【学生课堂实践练习】探【教师指导,学生小组讨论本节任务解决方案】如何创建“高校教学质量分析管理系统”数据库db_teaching,并查看服务器中已有的数据库清单,以及数据库的相关信息?解【教师指导,学生操作实施解决任务】命令行客户端和MySQLWorkbench图形化客户端,都可创建数据库;1、MySQLWorkbench图形化客户端创建数据库:(1)打开MySQLWorkbench图形化客户端软件,连接MySQL8服务器;(2)点击菜单栏下方的创建数据库工具图标,或者右击Schema选项卡的空白处,点击“CreateSchema...”选项,打开创建数据库窗口界面;(3)在创建数据库窗口的Name框中输入数据库名称,Charset/Collation下拉列表中分别选择数据库的字符集与校对集。此任务不需进行下拉选择,则default自动默认MySQL8服务器的字符集utf8mb4和对应校对集。单击“Apply”执行按钮。(4)在后续的应用SQL脚本界面,继续单击“Apply”执行按钮;(5)在执行成功界面,单击“finish”按钮,完成DB_Teaching数据库的创建。(6)点击Schema选项卡右上角刷新按钮,导航窗格中查看到服务器中建有DB_Teaching数据库了。2、命令行客户端创建并查看数据库信息CREATEDATABASEdb_teaching;SHOWDATABASES;SHOWCREATEDATABASEdb_teaching;USEdb_teaching;践【学生综合实践,运用本节学习技术完成工作任务单】“高校教学质量分析管理系统”数据库db_teaching“创建维护数据库”实践工作任务单2.“怡贝银行储蓄信贷业务系统”数据库db_ebank“创建和维护数据表”实践工作任务单备课纸(节)课题:任务2创建维护数据表课时教学目的要求:掌握创建和维护数据表正确选择合适的MySQL存储引擎熟练掌握使用数据类型教学重点:掌握创建、查看、修改、删除数据表掌握正确的为数据表字段设置数据类型教学难点:复制数据表创建生成新表操作的理解和掌握正确熟练认识数据类型,理解其使用场景教具:理实一体化机房、MySQL8.0、MySQLWorkbench课后小结教学过程:引【学生线上微课学习,引出讨论题】:怎样根据数据处理的需求,选择不同的存储引擎?怎样将数据使用合适的数据类型进行存放?导【教师导入任务情境】:G-EDU格诺博教育公司创建完成“高校教学质量分析管理系统”的后台数据库后,学生、教师、课程、督导专家、学院、班级、专业、评学评教成绩以及教学质量评价等多方面的数据,需要相应的数据表进行存放和管理。因此需要在db_teaching数据库中建立相应的数据表,用以分别存储不同的数据记录,并能灵活修改数据表的结构以能正确存放数据,对无意义的数据表也能随时删除以释放存储空间。析【教师带动学生】分析任务解决实施的技术要点,精讲:任务解决的要点为数据库选择合适的MySQL存储引擎认识MySQL的数据类型创建数据表查看数据库中的数据表,查看表创建语句或表信息,查看数据表结构复制数据表创建生成新表修改数据表删除数据表一、选择合适的MySQL存储引擎MySQL提供了很多种类型的存储引擎,每一种存储引擎对应了一种不同的存储方式,每一个存储引擎都有自己的优缺点,可以根据对数据处理的需求,选择不同的存储引擎。1.查看MySQL8支持的存储引擎SHOWENGINES2.查看和修改MySQL8默认存储引擎(1)MySQL8服务器可通过SHOWVARIABLES命令查看服务器默认存储引擎。(2)使用SET语句可以为default_storage_engine变量赋值为要修改的存储引擎名,从而修改服务器和数据库临时的默认存储引擎。【教师举例实操演示】对高校教学质量分析管理系统数据库db_teaching——例1:将MySQL8服务器和数据库的默认存储引擎由InnoDB临时修改设置为MyISAM。SETdefault_storage_engine=MyISAM;SHOWVARIABLESLIKE’default_storage_engine’;【学生课堂实践练习】二、MySQL的数据类型使用MySQL在数据库的二维表中存储数据时,数据的表示形式也即数据类型,决定了数据的存储格式和有效范围等。创建数据表时,根据所要存放管理的数据特征,为每个列字段设置合适的数据类型,对数据库的优化非常重要,有助于对数据进行正确排序和最优化磁盘使用。MySQL支持多种数据类型,主要分为整数类型、浮点与定点类型、字符(串)类型、日期时间类型型、二进制类型和JSON类型创建数据表数据表是数据库中存储数据的基本单位,是存放数据的对象实体,创建数据表的过程是规定数据列的属性的过程,即定义表结构的过程,同时也是实施数据完整性(包括实体完整性、引用完整性和域完整性)约束的过程。MySQL中使用CREATETABLE命令创建数据表,其SQL命令语法格式如下:CREATE[TEMPORARY]TABLE[IFNOTEXISTS]表名(字段名1数据类型[字段完整性约束定义][COMMENT字段1注释],字段名2数据类型[字段完整性约束定义][COMMENT字段2注释],……);【教师举例实操演示】对高校教学质量分析管理系统数据库db_teaching——例2:在高校教学质量分析管理系统数据库db_teaching中,创建一个名为tb_teacher信息表)的数据表,表结构如下所示:(教师信表2-10tb_teacher(教师信息表)字段名称字段类型字段说明Teacher_Nochar(6)教师编号Teacher_Namechar(4)教师姓名Teacher_Login_Namevarchar(10)教师登录名Teacher_Passwordvarchar(20)教师登录密码Genderenum('男','女')性别Staff_Nochar(6)所属教研室编号BirthdayDate出生日期Work_DateDate参加工作日期Positional_Titleenum('助教','讲师','副教授','教授')职称Edu_Backgroundenum('大专','本科','研究生','博士生')学历Degreeenum('学士','硕士','博士')学位Wagesdecimal(8,2)工资mysql>USEdb_teaching;Databasechangedmysql>CREATETABLEtb_teacher(->Teacher_Nochar(6)comment'教师编号',->Teacher_Namechar(4)comment'教师姓名',->Teacher_Login_Namevarchar(10)comment'教师登录名',->Teacher_Passwordvarchar(6)comment'教师登录密码',->Genderenum('男','女')comment'性别',->Staff_Nochar(6)comment'所属教研室编号',->Birthdaydatecomment'出生日期',->Work_Datedatecomment'参加工作日期',->Positional_Titleenum('助教','讲师','副教授','教授')comment'职称',->Edu_Backgroundenum('大专','本科','研究生','博士生')comment'学历',->Degreeenum('学士','硕士','博士')comment'学位',->Wagesdecimal(8,2)comment'工资'->);【学生课堂实践练习】四、查看数据表1.查看指定数据库中的表;SHOWTABLES[LIKE匹配模式];【教师举例实操演示】对高校教学质量分析管理系统数据库db_teaching——例3:查看目前高校教学质量分析管理系统数据库db_teaching中已有的数据表清单。USEdb_teaching;SHOWTABLES;SHOWTABLESLIKE'tb_%';【学生课堂实践练习】2.查看数据表信息;SHOWTABLESTATUS[FROM数据库名][LIKE匹配模式];【教师举例实操演示】对高校教学质量分析管理系统数据库db_teaching——例4:查看高校教学质量分析管理系统数据库db_teaching中教师信息表tb_teacher的表信息详情。SHOWTABLESTATUSFROMdb_teachingLIKE'tb_tea%'【学生课堂实践练习】3.查看数据表创建语句SHOWCREATETABLE数据表名;【教师举例实操演示】对高校教学质量分析管理系统数据库db_teaching——例5:查看高校教学质量分析管理系统数据库db_teaching中教师信息表tb_teacher的创建语句。SHOWCREATETABLEtb_teacher;【学生课堂实践练习】4.查看数据表结构DESCRIBE|DESC数据表名;【教师举例实操演示】对高校教学质量分析管理系统数据库db_teaching——例6:查看高校教学质量分析管理系统数据库db_teaching中教师信息表tb_teacher的表结构。DESCRIBEtb_teacher;【学生课堂实践练习】五、复制数据表只复制表结构生成新表CREATETABLE目标新表名Like源表名;【教师举例实操演示】对高校教学质量分析管理系统数据库db_teaching——例7:复制高校教学质量分析管理系统数据库db_teaching中教师信息表tb_teacher的表结构,复制后的表名为tb_teacher_copy,并查看复制后db_teaching数据库中的数据表。CREATETABLEtb_teacher_copyLIKEtb_teacherSHOWTABLES;【学生课堂实践练习】复制表结构和数据生成新表CREATETABLE目标新表名SELECT*FROM源表名;【教师举例实操演示】对高校教学质量分析管理系统数据库db_teaching——例8:复制高校教学质量分析管理系统数据库db_teaching中教师信息表tb_teacher的表结构和数据,复制后的表名为tb_teacher_copy_1。CREATETABLEtb_teacher_copy_1SELECT*FROMtb_teacher;【学生课堂实践练习】六、修改数据表1.修改表名ALTERTABLE原表名RENAME[TO]新表名;【教师举例实操演示】对高校教学质量分析管理系统数据库db_teaching——例9:将db_teaching数据库中tb_teacher_copy表名改为tb_teacher1,并查看表名是否修改成功。ALTERTABLEtb_teacher_copyRENAMETOtb_teacher1;SHOWTABLES;【学生课堂实践练习】2.修改字段名ALTERTABLE表名CHANGE旧字段名新字段名数据类型;【教师举例实操演示】对高校教学质量分析管理系统数据库db_teaching——例10:将db_teaching数据库中tb_teacher1表中的Teacher_Name字段的字段名改为T_Name,数据类型改为VARCHAR(10),并查看修改后的效果。ALTERTABLEtb_teacher1CHANGETeacher_NameT_NameVARCHAR(10)DESCtb_teacher1【学生课堂实践练习】3.修改字段数据类型ALTERTABLE表名MODIFY字段名新数据类型;【教师举例实操演示】对高校教学质量分析管理系统数据库db_teaching——例11:将db_teaching数据库中tb_teacher1表的Teacher_Password字段的数据类型改为CHAR(8),并查看修改后的效果。ALTERTABLEtb_teacher1MODIFYTeacher_PasswordCHAR(8)DESCtb_teacher1【学生课堂实践练习】4.增加字段ALTERTABLE表名ADD新增字段名数据类型[字段完整性约束条件][FIRST|AFTER已有字段名]【教师举例实操演示】对高校教学质量分析管理系统数据库db_teaching——例12:向db_teaching数据库中tb_teacher1表里添加Telphone(联系电话)字段,定义该字段的数据类型为CHAR(13),并查看修改后的效果。ALTERTABLEtb_teacher1ADDTelphonechar(13);DESCtb_teacher1删除字段ALTERTABLE表名DROP字段名;【教师举例实操演示】对高校教学质量分析管理系统数据库db_teaching——例13:将db_teaching数据库中tb_teacher1表里的Telphone字段删除,并查看操作后的效果。ALTERTABLEtb_teacher1DROPTelphoneDESCtb_teacher1【学生课堂实践练习】七、删除数据表MySQL使用DROPTABLE语句删除数据表,表删除后连同表的结构、约束、索引及权限等一并都删除。DROPTABLE[IFEXISTS]表名;【教师举例实操演示】对高校教学质量分析管理系统数据库db_teaching——例14:删除db_teaching数据库中tb_teacher1表,并查看操作后的效果。。DROPTABLEIFEXISTStb_teacher1SHOWTABLES;【学生课堂实践练习】探【学生小组讨论本节任务解决方案】:如何为高校教学质量分析管理系统数据库db_teaching继续创建所需数据表。通过SQL命令行客户端,创建学生信息表tb_student。解【学生操作实施解决任务】命令行客户端usedb_teaching;CRATETABKEtb_student(Stu_Nochar(2)comment’学号’,Stu_Namechar(4)comment’学生姓名’,Stu_Login_Namevarchar(20)comment’学生登录名’,Stu_Passwordchar(6)comment’学生登录密码’,Class_Nochar(10)comment’所在班级编号’,Genderenum('男','女')comment’性别’,Political_Staenum('共青团员','预备党员','中共党员','群众')comment’政治面貌’,Identity_Nochar(18)comment’身份证号’,BirthdayDatecomment’生日’,Nationvarchar(10)comment’民族’,Addressvarchar(50)comment’家庭住址’,Zipchar(6)comment’邮政编码’,Phonechar(20)comment’联系电话’,);MySQLWorkbench图形化客户端:右击导航窗格的db_teaching数据库中的Tables选项,快捷菜单中单击“CreateTable...”选项,如图2-25所示,打开创建数据表窗口界面;在创建数据表窗口的TableName框中输入数据表名称,单击窗口中的按钮,显示字段设置框,双击ColumnName和DataType下的空白框,添加数据表字段和数据类型;(3)单击“Apply”执行按钮。弹出如图2-27所示的应用SQL脚本界面,继续单击“Apply”执行按钮;在弹出的执行成功界面,单击“finish”按钮,完成tb_student数据表的创建。(4)点击Schema选项卡右上角刷新按钮,导航窗格中查看到DB_Teaching数据库中的TB_Student数据表了践【学生综合实践,运用本节学习技术完成工作任务单】1.“高校教学质量分析管理系统”数据库db_teaching“创建和维护数据表”实践工作任务单2.“怡贝银行储蓄信贷业务系统”数据库db_ebank“创建和维护数据表”实践工作任务单备课纸(节)课题:任务3实现数据完整性约束课时教学目的要求:掌握根据需求创建和维护约束掌握MySQL的运算符与条件表达式教学重点:能正确使用约束保证数据的完整性掌握如何使用运算符和条件表达式教学难点:正确理解不同约束的作用,根据需求使用约束熟识运算符和表达式的正确使用方法教具:理实一体化机房、MySQL8.0、MySQLWorkbench课后小结教学过程:引【学生线上微课学习,引出讨论题】:如何防止往系统表中插入错误的记录?如何保证表数据是完整有效的?导【教师导入任务情境】:G-EDU格诺博教育公司在“高校教学质量分析管理系统”的后台数据库中,已创建好学生、教师、课程、督导专家、学院、班级、专业、评学评教成绩以及教学质量评价等数据表,需要向相应的数据表中添加数据记录。为了防止在数据表中插入错误的数据,需要先为相应的数据表定义一些能尽量避免操作数据错误的规则,包括设置表中的某个字段数据不允许为空、所有数据不能重复、某个字段的数据有默认值、数据要满足自定义范围或取值的要求、保证表间的数据变化的一致性和正确性等等。公司决定对于简单的数据完整性保障规则通过在表结构设置约束来实施。析【教师带动学生】分析任务解决实施的技术要点,精讲:任务解决的要点NotNull非空约束PrimaryKey主键约束Unique唯一约束Default默认值约束Auto_Increment自增约束Check检查约束ForeignKey外键约束MySQL的运算符与条件表达式NotNull非空约束MySQL的NotNull非空约束是指字段的值不能为空。如果表格中的字段设置了非空约束,那么用户在添加数据时没有为该字段指定值,数据库系统就会报出错误。创建表时创建非空约束字段名数据类型NotNull|Null为已存在的表添加非空约束ALTERTABLE表名MODIFY字段名数据类型NotNull|Null;删除非空约束ALTERTABLE表名MODIFY字段名数据类型;PrimaryKey主键约束如果数据表中的字段设置了PrimaryKey主键约束,那么该字段称之为主键字段,主键用于唯一标识表中的每一条记录,也就是设置为主键的字段的取值既不允许重复,也不允许为NULL。创建表时创建主键约束单一主键约束字段名数据类型PRIMARYKEY复合主键约束PRIMARYKEY(字段名1,字段名1,…,字段名n)为已存在的表添加主键约束ALTERTABLE表名ADD[CONSTRAINT约束名]PRIMARYKEY(字段名);删除主键约束ALTERTABLE表名DROPPRIMARYKEY;Unique唯一约束MySQL中的Unique唯一性约束,用于非主键字段限定其取值同样具有唯一性、不能重复。设置了唯一性约束的字段取值可以为NULL。创建表时创建唯一性约束字段名数据类型UNIQUE为已存在的表添加唯一性约束ALTERTABLE表名ADD[CONSTRAINT约束名]UNIQUE(字段名1[,字段名2,...]);删除唯一性约束ALTERTABLE表名DROPINDEX唯一约束名;Default默认值约束MySQL中的Default默认值约束,用于设定字段的默认值,如果对设置了默认值约束的字段没有输入值,将会把默认值添加到新记录。创建表时创建默认值约束字段名数据类型DEFAULT默认值为已存在的表添加默认值约束ALTERTABLE表名MODIFY字段名数据类型DEFAULT默认值;删除默认值约束ALTERTABLE表名MODIFY字段名数据类型;Auto_Increment自增约束MySQL中的Auto_Increment自增约束,可以设定字段值的自动增长,来实现自动生成字段的值,从而防止添加的重复值。创建表时创建自增约束字段名数据类型AUTO_INCREMENT为已存在的表添加自增约束ALTERTABLE<表名>MODIFY<字段名><数据类型>AUTO_INCREMENT;删除自增约束ALTERTABLE<表名>MODIFY<字段名><数据类型>;【教师举例实操演示】对高校教学质量分析管理系统数据库db_teaching——例1:在db_teaching数据库中,创建教师信息表tb_teacher时,为该表的部分字段设置指定约束:(1)除工资Wages字段允许为空,其余字段都设置非空约束;(2)教师编号Teacher_No字段设置主键约束,编号自增;(3)教师登录名Teacher_Login_Name字段设置唯一性约束;(4)性别Gender字段设置默认约束,默认值为“男”;mysql>USEdb_teaching;Databasechangedmysql>CREATETABLEtb_teacher(->Teacher_Nochar(6)AUTO_INCREAMENTPRIMARYKEYNOTNULLcomment'教师编号',->Teacher_Namechar(4)NOTNULLcomment'教师姓名'NotNull,->Teacher_Login_Namevarchar(10)UNIQUENOTNULLcomment'教师登录名',->Teacher_Passwordvarchar(20)NOTNULLcomment'教师登录密码',->Genderenum('男','女')DEFAULT‘男’NOTNULLcomment'性别',->Staff_Nochar(6)NOTNULLcomment'所属教研室编号',->BirthdaydateNOTNULLcomment'出生日期',->Work_DatedateNOTNULLcomment'参加工作日期',->Positional_Titleenum('助教','讲师','副教授','教授')NOTNULLcomment'职称',->Edu_Backgroundenum('大专','本科','研究生','博士生')NOTNULLcomment'学历',->Degreeenum('学士','硕士','博士')NOTNULLcomment'学位',->Wagesdecimal(8,2)comment'工资'->);【学生课堂实践练习】【教师举例实操演示】对高校教学质量分析管理系统数据库db_teaching——例2:删除教师信息表tb_teacher中已有的部分约束,包括教师编号Teacher_No字段的主键约束和自增约束、教师登录名Teacher_Login_Name字段的唯一性约束、性别Gender字段的默认约束。删除教师编号Teacher_No字段的主键约束ALTERTABLEtb_teacherDROPPRIMARYKEY;删除教师编号Teacher_No字段自增约束ALTERTABLEtb_teacherMODIFYTeacher_Nochar(6)NOTNULLcomment'教师编号';)删除教师登录名Teacher_Login_Name字段的唯一性约束ALTERTABLEtb_teacherDROPINDEXTeacher_Login_Name;删除性别Gender字段的默认约束ALTERTABLEtb_teacherMODIFYTeacher_Passwordchar(6)DEFAULT‘男’【学生课堂实践练习】【教师举例实操演示】对高校教学质量分析管理系统数据库db_teaching——例3:在已建立基本表结构的教师信息表tb_teacher中,为教师编号Teacher_No字段添加主键约束和自增约束、为教师登录名Teacher_Login_Name字段添加唯一性约束、为性别Gender字段添加默认约束,默认值为“男”。添加教师编号Teacher_No字段的自增约束ALTERTABLEtb_teacherMODIFYTeacher_NointAUTO_INCREMENT;添加教师编号Teacher_No字段的主键约束ALTERTABLEtb_teacherADDPRIMARYKEY(Teacher_No);添加教师登录名Teacher_Login_Name字段的唯一性约束ALTERTABLEtb_teacherADDCONSTRAINTuc_Teacher_NoUNIQUE(Teacher_No);添加性别Gender字段的默认约束ALTERTABLEtb_teacherMODIFYTeacher_Passwordchar(6)DEFAULT‘男’;【学生课堂实践练习】【教师举例实操演示】对高校教学质量分析管理系统数据库db_teaching——例4:在db_teaching数据库中,创建班级分课表tb_class_course时,设置班级编号Class_No、教师编号Teacher_No、课程编号Course_No为该表的复合主键,分课次序Num值唯一。mysql>CREATETABLEtb_class_course(->Class_Nochar(10)NOTNULLCOMMENT‘班级编号’,->Teacher_Nochar(6)COMMENT‘教师编号’,->Course_Nochar(6)NOTNULLCOMMENT'课程编号',->NumintNOTNULLCOMMENT'分课次序',->School_Year_Termchar(15)NOTNULLCOMMENT'分课学年学期',->PRIMARYKEY(Class_No,Teacher_No,Course_No),->UNIQUE(Num)->);【学生课堂实践练习】Check检查约束MySQL中的CHECK检查约束,用于限制和检查字段中的值是否达到正确要求,即如果在列级对某个字段设置CHECK检查约束,那么该字段只允许满足检查条件的特定值。创建表时创建CHECK检查约束CHECK(检查条件表达式)【教师举例实操演示】对高校教学质量分析管理系统数据库db_teaching——例5:在db_teaching数据库中,创建教师信息表tb_teacher时,限定教师编号Teacher_No的数据只能由6位数字组成,出生日期Birthday必须在1950年1月1日以后。USEdb_teaching;mysql>CREATETABLEtb_teacher(->Teacher_Nochar(6)CHECK(Teacher_NoREGEXP'^[0-9]+$'),comment'教师编号',->Teacher_Namechar(4)comment'教师姓名'NotNull,->Teacher_Login_Namevarchar(10)

温馨提示

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

评论

0/150

提交评论