MySQL数据库项目实战教案项目1、2“天意书屋”数据库的创建与管理、“天意书屋”数据库中数据表的创建与管理.docx
<<MySQL数据库项目实收教嗓课程名称:XXXX®授课年级:XXXX&投课学期:XXXX-教师城名:XXXX&项目名称项目1“天意书屋”数据库的创建与管理计划学时6学时内容导览近几年来,开源数据库管理系统由于高性能、低成本、高可靠性应用范围广泛,而MySQL数据库管理系统就是其中的杰出代表。本项目主要介绍数据库的相关知识以及应用MySQL数据库管理系统创建及维护数据库的相关操作。教学目标1 .了解数据库的相关概念2 .了解层次模型、网状模型、关系模型的特点3 .掌握MySQL数据库的安装与配置方法4 .掌握数据库的创建、查看、选择与删除操作教学重点L数据库的相关概念。2 .数据库的创建、查看、选择与删除操作。3 .数据库的导入和导出操作。学占,教难L数据库的相关概念。2 .数据库的创建、查看、选择与删除操作。3 .数据库的导入和导出操作。教学过程第1-2学时(初识数据库)知识目标:了解数据库的相关概念,掌握MySQL数据库的安装与配置方法。能力目标:具备Windows系统下MySQL安装配置能力。素质目标:具有发现问题和解决问题的能力。一、知识讲解,实操演示1.数据库的基本概念(1)数据(Data)数据是描述客观事物及其活动,并存储在某一种介质上能够识别的物理符号。每天,每个人都会接触到大量的数据。例如:在网络上购买商品时,人们会接触到商品信息表中记录的每个商品的商品编号、类型、名称、价格等信息,这就是“数据”。(2)数据库(Database,DB)数据库是以一定的组织方式将相关的数据组织在一起,并存放在计算机外存储器上(有序的仓库),并能为多个用户共享,可以实现与应用程序彼此独立的一组相关数据的集合。(3)数据库管理系统(DatabaseManagementSystem,DBMS)数据库管理系统(DataBaseManagementSystem,DBMS)是一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库。用户和数据库管理员可以通过DBMS访问数据库中的数据并进行数据维护。(4)数据库系统(DatabaseSystem,DBS)数据库系统(DataBaSeSystem,DBS)是指在计算机系统中引入数据库后的系统,一般由数据库、数据库管理系统(及开发软件)、数据库管理员、计算机系统构成。2.数据模型数据模型是现实世界数据特征的抽象,用于描述一组数据的概念和定义。数据模型是数据库中数据的存储方式,是数据库系统的基础。(1)层次模型是用树形结构来表示数据之间的关系。特点如下:有且仅有一个结点无父结点,这个结点即为树根。其他结点有且仅有一个父结点。(2)网状模型是用网络结构来表示数据之间的关系,可以表示多对多的关系。特点如下:可以有一个以上的结点无父结点。至少有一个子结点有一个以上的父结点。在两个结点之间有两个或两个以上的联系。(3)关系模型是把数据结构看成一个二维表,每个二维表就是一个关系,关系模型是由若干个二维表格组成的集合。二、关系型数据库1 .关系型数据库关系数据库,是建立在关系模型基础上的数据库。2 .常见的关系型数据库产品(1) Oracle(2) DB2(3) SQLServer(4) MySQLMySQL是最流行的开放源码的数据库管理系统,它具有快速、可靠和易于使用的特点。MySQL还具有跨平台的特性,可以在WindoWs、UNlX、LinUX和MaCOS等平台上使用。三、MySQL下载与安装二、任务评测,汇报展示(1)发布课堂在线测试。(2)学生分小组完成项目需求,并进行汇报展示。第3-4学时(创建和维护数据库)知识目标:掌握数据库的创建、查看、选择与删除操作。能力目标:熟悉MySQL数据库的创建、查看、选择、修改及删除操作。素质目标:具备理想信念,具有创新精神。一、温故知新,情境导入1 .回顾上节课学习的数据库概念,引出本节的内容:数据库的创建、查看等操作。2 .动画引入数据的创建,明确学习目标。二、知识讲解,实操演示1 .使用NaViCat连接MySQL2 .系统数据库和用户数据库3 .创建数据库语法格式:CREATEDATABASE数据库名DEFAULTCHARACTERSET字符集名称DEFAULTCOLLATE排序规则名称;语句说明: 数据库名一般由字母、汉字和下划线组成,不允许有空格,不能是MySQL关键字,不能与其他数据库同名。数据库命名要求简单明了,见名知意。 数据库需要适应各种语言和字符就需要支持不同的字符集(character),每种字符集也有各自的排序规则(collate)<> 内为可选参数,若不指定CharaCterSet或ColIate,则选择默认的字符集和排序规则。SQL语句以分号、”或“g”结束。4 .SQL语句查看数据库语法格式:SHOWDATABASESLIKEpattern;语句说明: SHOWDATABASES:显示数据库。 1.IKEpattern:其中Pattern字符串可以是一个使用SQL的“犷和“,通配符的字符串。SQL语句查看指定数据库的创建信息。语法格式:SHOWCREATEDATABASE数据库名;语句说明: SHOW:关键字,显示。 CREATEDATABASE:关键字,创建数据库。 数据库名:代表查看指定数据库名称。5 .选择数据库数据库管理系统中一般会存在多个数据库,因此,在操作数据库对象之前要先选择一个数据库。语法格式:USE数据库名;语句说明:USE:关键字,表示使用。数据库名:需要选择的数据库的名称。6. SQL语句修改数据库修改数据库的字符集和排序规则的语法格式:ALTERDATABASE数据库名DEFAULTCHARACTERSET字符集名称IDEFAULTCOLLATE排序规则名称;语句说明: ALTERDATABASE:表示修改数据库。 DEFAULT:可选项,代表默认值。 CHARACTERSET:字符集设置,后面加设置的字符集名称。 COLLATE:关键字,表示设置排序规则,后面加排序规则名。7. SQL语句删除数据库语法格式:DROPDATABASE数据库名;语句说明:DROP:关键字,删除。数据库名:要删除的数据库名称。8. 窗口操作数据库的导入与导出三、任务评测,汇报展示(1)发布课堂在线测试。(2)学生分小组完成项目需求,并进行汇报展示。第5-6学时(项目实训)一、需求分析,布置任务1 .教师先进行需求分析,分析学生选课系统相关需求,根据需求创建数据库。2 .教师发布任务。二、团队合作,任务执行1.学生分为6组,分工合作。2.项目执行过程中,通过团队合作解决问题,最终完成项目。三、汇报展示,考核评价1 .各小组通过抽签方式决定汇报顺序。2 .小组汇报结束后,教师和其他同学可以为该小组成员打分,系统自动生成各成员的成绩。教学反思MySQL数据库项月实战教案课程名称:XXXXXX授课年级:XXXXXX授课学期:XXXXXX教师姓名:XXXXXX项目名称项目2“天意书屋”数据库中数据表的创建与管理计划学时12学时内容导览前面我们已经学习了数据库概念及创建的相关操作。数据是以二维表的形式保存在数据库中,一个数据库中可以包含多个数据表,每个数据表都是由数据表结构和记录构成。在数据库中创建和维护数据表是对数据管理的基础。本项目我们将介绍搭建数据表、编辑和维护数据表讲解。教学目标L初步了解数据表结构。2 .掌握常用的数据类型的使用方法。3 .掌握创建表结构的方法及熟练设置各类约束。4 .熟练掌握插入、修改、删除数据的方法。教学重点1 .掌握创建表结构的方法及熟练设置各类约束。2 .熟练掌握插入、修改、删除数据的方法。教学难点1 .掌握创建表结构的方法及熟练设置各类约束。2 .熟练掌握插入、修改、删除数据的方法。教学过程第1-2学时(搭建数据表结构)知识目标:掌握数据表的相关概念、掌握搭建数据表的两种方法能力目标:具备灵活运用两种方式搭建数据表结构的能力。素质目标:培养学生具备认真仔细,精益求精的工匠精神。一、温故知新,情境导入1 .回顾项目一中数据库创建的相关知识,引出本节内容:数据表结构的搭建。2 .动画引入数据表结构搭建,了解学习内容。二、知识讲解,实操演示1.表的定义数据是存储在一张张数据表中,数据在表中的组织方式与在电子表格中相似,都是按行和列的形式存储的。每一行代表一条数据信息(也称为记录),每一列代表记录中的一个字段(属性)。2 .数据类型数据表由多个字段构成,每个字段可以指定不同的数据类型,数据类型用于规定数据的存储方式、约束和有效范围。MySQL数据库提供了多种数据类型,主要包括:数值类型、字符串类型、日期和时间类型、货币类型、二进制类型、文本和图形类型等,下面详细介绍数值、字符串、日期和时间、类型的使用。(1)数值类型数值类型包括严格数值类型(integer、smallint>decimal和nume:TiC),以及近似数值类型(float、real等)(2)日期和时间类型表示日期和时间的类型为:date>time>year、datetime>timestamp提示:每个时间类型有一个有效值范围和一个零值,当指定不合法的、MySQL不能表示的值时,使用零值。>timestamp结束时间是第2147483647秒,北京时间2038-1-1911:14:07。(3)字符串类型常用的字符串类型:char>varchar>tinytext>text>blob等3 .空值(NULL)空值(NULL)不同于0、空白或长度为0的字符串(如。.创建数据表1.使用图形化界面方式在前面的任务实施中已经详细介绍了实施过程。4 .使用SQL命令创建语法格式:CREATETABLE表名(字段名1数据类型(长度)其他字段属性,字段名2数据类型(长度)其他字段属性,字段名n数据类型(长度)其他字段属性);语句说明: CREATETABLE:关键字,表示创建表。 表名:命名规则应符合标识符命的名规则,一般遵循见名知意的原则。三、任务评测,汇报展示(1)发布课堂在线测试。(2)学生分小组完成项目需求,并进行汇报展示。第3-4学时(主键、唯一和非空约束)知识目标:掌握主键约束的创建方法、掌握唯一约束的创建方法、掌握非空约束的创建方法。能力目标:具备创建表结构约束的能力。素质目标:培养学生做具备遵守规则的人。一、温故知新,情境导入1 .回顾上节课学习的表结构创建方式,引出本节的内容:约束。2 .动画引入主键约束,明确学习目标。二、知识讲解,实操演示约束及约束设置约束是一种限制,用来限制表的行数据或列数据,MySQL数据库通过约束(constraints)防止无效的数据输入到表中,确保表数据的完整性、唯一性。当删除表时,约束也随之删除。MySQL中常用的有6种约束,分别是PRIMARYKEY约束、UNIQUE约束、NULL约束、DEFAULT约束、FOREIGNKEY约束、自动增长约束。1、主键(PRIMARYKEY)约束主键约束是一个表中用来保证一列的值是唯一且非空的标识。为了保证数据的完整性,每一个数据表中只能有一个主键约束。为表定义主键约束时,必须遵循以下规则:>主键必须包含唯一值。例如客户信息表tb_user客户编号USerid设为该表的主键,它能唯一标识一条客户信息的记录。如果主键由多列组成,主键约束定义中的所有列的组合值必须唯一。主键列不能包含NULL值。这意味着必须使用NOTNULL属性声明主键列。如果不这样做,MySQL将NoTNULL隐式强制主键列。2、唯一(UNIQUE)约束UNIQUE约束是指所有记录中字段的值不能重复出现,应用于表中的非主键列,用于保证表中的两个数据行在非主键列中没有相同的列值。例如:在tbuser表中,为userid字段设置唯一约束后,如果其中一条记录的userid值为'100001',那么在该表中就不会出现另一条记录的USerid值也为i100001,o唯一约束与主键约束的区别:唯一约束在一个表中可有多个,而主键约束在一个表中只能有一个。唯一约束的列允许有空值,但是只能有一个空值。主键约束列不允许有空值。3、非空(NOTNULL)约束表的字段可以包含NULL值,如果不希望某个字段出现空值,可以在该字段上添加NOTNULL约束(非空约束),此时就必须给该字段指定一个具体的值,不能留空。提不:>NULL不等于没有数据,而是表示数据是未知的。三、任务评测,汇报展示(1)发布课堂在线测试。(2)学生分小组完成项目需求,并进行汇报展示。第5-6学时(默认、外键和自动增长约束)知识目标:1 .掌握设置默认(DEFAULT)约束方法2 .掌握设置外键(FOREIGNKEY)约束方法3 .掌握设置自动增长(AUnLINCREMENT)约束方法。能力目标:具备创建表结构约束的能力。素质目标:培养学生做具备遵守规则的人。一、温故知新,情境导入1 .回顾上节课学习的唯一约束,引出本节的内容:默认、外键和自动增长约束。2 .动画引入外键约束,明确学习目标。二、知识讲解,实操演示1、默认(DEFAULT)约束若将表中某列定义了DEFAULT约束后,用户在插入新的数据行时,如果没有为该列指定数据,那么系统将默认值赋给该列。默认值可以为常量、函数、空值(NULL)等。2、外键(FOREIGNKEY)约束外键约束为两个表的数据建立连接,约束两个表中数据的一致性和完整性。当数据添加、修改和删除时,通过参照完整性保证它们数据的一致性。定义外键时,需要遵守下列规则:必须先为主表定义主键。外键中列的数目必须和主表的主键中列的数目相同。外键中列的数据类型必须和主表主键中对应列的数据类型相同。使用SQL语句设置外键约束语法格式:FOREIGNKEY(字段名)REFERENCES主表名(主键列)语句说明: FOREIGNKEY:关键字,表示设置外键,后加要设置外键的字段。 REFERENCES:关键字,表示关联主表,后加主表名及主表中的主键字段。3、自动增长(AUT0NCREMENT)约束在表中录入的数据有很多是1、2、3这样的连续数字,比如tb_book表中bookid,在输入这样连续数字时为了避免出错,MySQL提供自动增长功能来自动生成主键的值。使用SQL语句设置自动增长约束语法格式:字段名数据类型Autojncrement语句说明:数据类型:自增长字段的数据类型必须是整型。AUTOINCREMENT:关键字,表示设置自动增长。提示:任何字段要做自增长,前提其本身必须是一个索引,它可以是PRIMARYKEY或UNIQUE索引。每张表最多有一个自增长字段。三、任务评测,汇报展示(1)发布课堂在线测试。(2)学生分小组完成项目需求,并进行汇报展示。第7-8学时(查看和修改数据表结构)知识目标:掌握查看数据表结构方法、掌握修改数据表结构方法。能力目标:具备查看和修改表结构的能力。素质目标:培养学生具备耐心细致的工匠精神。一、温故知新,情境导入1 .回顾上节课学习的默认、外键和自动增长约束,引出本节的内容:查看和修改数据表结构。2 .动画引入内连接查询,明确学习目标。二、知识讲解,实操演示1 .使用SQL语句查看表结构语法格式:describeIdesc表名;或者SHOWCOLUMNSFROM表名;语句说明:DESCRIBE:关键字,表示查看,可以使用DESC替代。SHOWCOLUMNS:关键字,表示显示列。提示:以上两种表达方式可以实现相同的效果。2 .修改数据表结构数据表创建以后,在使用过程中可能需要对原先定义的表结构进行修改。对表的修改包括:增加列、删除列、修改已有列的属性、添加和删除约束等。使用SQL语句修改表结构:语法格式:ALTERTABLE表名MODIFY列名新数据类型NULL/NoTNULLRENAMETO新表名CHANGE列名新列名新数据类型ADD新列名数据类型完整性约束NULL/NOTNULLDROP列名;语句说明: ALTERTABLE:关键字,表示修改表。 MODIFY:关键字,表示修改列的属性。 RENAME:关键字,表示修改表的名称。 CHANGE:关键字,表示修改列名。 ADD/DROP:关键字,表示增加、删除表中的列。 NULL/NOTNULL:关键字,表示修改列为空或不为空。三、任务评测,汇报展示(1)发布课堂在线测试。(2)学生分小组完成项目需求,并进行汇报展示。第9-10学时(编辑和维护数据表)知识目标:1 .掌握添加数据表记录的方法2 .掌握修改、删除数据库表记录的方法3 .掌握删除数据表方法能力目标:具备编辑和维护数据表的能力。素质目标:培养学生具备录入数据的准确性,精益求精的工匠精神。一、温故知新,情境导入1 .回顾上节课学习的修改表结构,引出本节的内容:编辑和维护数据表。2 .动画引入编辑和维护数据表,明确学习目标。二、知识讲解,实操演示1、使用SQL语句向表中添加数据(1)语法格式:INSERTINTO表名(列名1,列名2,)VALUES(数据值1,数据值2,);语句说明: INSERTINTO:关键字,表示插入数据,INTO可以省略。 VALUES:关键字,表示值,后面括号中加要插入的数据值列表。提不:当向表中插入一行完整数据时,可以省略列名,VALUES后面的值列表与前面的字段列表一一对应,且数据类型要一致。当向表中插入数据的顺序与列顺序不同时.,必须写列名。当向表中插入部分数据时,必须写列名。(2)语法格式:INSERTINTO表名VALUES(数据值11,数据值12,),VALUES(数据值据,数据值22,-),VALUES(数据值nl,数据值112,);语句说明: INSERTINTO:关键字,表示插入数据,INTO可以省略。 VALUES:关键字,表示值,加要插入的数据值列表,多个VALUES子句中用逗号分隔。2、数据表数据的修改修改表中数据的方法:一是使用图形化界面直接修改表中数据,具体步骤与使用图形化界面直接向表中插入数据相同;另一种是使用SQL语句修改表中的数据。语法格式:UPDATE表名SET列名1二更改的值1,列名列更改的值2,WHERE条件;语句说明: UPDATE:关键字,表示更新数据,后加要更新的数据表。 SET:关键字,表示设置更新列数据。3、使用SQL语句删除表中的数据语法格式:DELETEFROM表名WHERE条件;语句说明: DELETE:关键字,表示删除,删除FROM后面给出表名的表。 WHERE:WHERE子句是可选的,如果不加条件,则删除表中所有记录。4、使用SQL语句删除数据表语法格式:DROPTABLE表名;语句说明: DROP:关键字,表示删除。 TABLE:关键字,表示表,后接的表名指要删除的表的名称。三、任务评测,汇报展示(1)发布课堂在线测试。(2)学生分小组完成项目需求,并进行汇报展示。第11-12学时(项目实训)一、需求分析,布置任务1 .教师先进行需求分析,分析学生选课系统项目的数据表结构和数据的相关需求。2 .教师发布任务。二、团队合作,任务执行1.学生分为6组,分工合作。3 .项目执行过程中,通过团队合作解决问题,最终完成项目。三、汇报展示,考核评价1 .各小组通过抽签方式决定汇报顺序。2 .小组汇报结束后,教师和其他同学可以为该小组成员打分,系统自动生成各成员的成绩。教学反思