MySQL数据库应用项目式教程课件:创建数据表及其约束.pptx
创建数据表及其约束
创建数据表在数据库中,数据表是最重要、最基本的操作对象,是数据存储的基本单位。一个数据库中可以包含一张或多张表,表是数据的集合,是用来存储数据和操作数据的逻辑结构。数据在表中是按照行和列的格式来组织排列的,每一行代表一条唯一的记录,每一列代表记录的一个属性,称为字段。在MySQL中,创建数据表的方法主要有两种:1.在MySQL图形化管理工具中实现,如在Navicat中使用图形界面化操作。2.在命令行管理工具中使用SQL语句实现。
本节内容1.分析并设计数据表的结构及约束2.使用图形管理工具创建数据表3.使用CREATETABLE语句创建数据表
01任务3-1分析并设计数据表的结构及约束
1.分析并设计数据表的结构及约束根据对学生成绩管理数据库studb功能的分析,在数据库中设计了3张数据表,分别是学生表student、课程表course和成绩表score,现要求为学生成绩管理数据库studb中的各个表设计逻辑结构及约束。【任务分析】在创建表之前,应该先确定各表的逻辑结构,也就是表中都有哪些字段,这些字段的名称、数据类型及其长度,以及是否要使用约束或其他限制。?【任务描述】
1.分析并设计数据表的结构及约束1.分析学生成绩管理数据库studb中3张表(学生表student、课程表course和成绩表score)中数据的特征,确定表中各字段的数据类型。?【任务实施】数据类型字段(列)名称数值型整数学分(credit)、成绩(grade)、学生所得学分(stu_credit)、序号(id)(自动递增、无符号数)字符型固定长度学号(sno)、课程编号(cno)可变长度姓名(sname)、系别(dept)、班级(class)、课程名称(cname)、备注(remark)日期时间型出生日期(birthday) 枚举型性别(sex)、考核类型(ctype)
1.分析并设计数据表的结构及约束2.设计表结构及约束。根据分析好的数据类型,结合对数据完整性的要求,合理选择主键、外键、唯一值、默认值等约束,确定学生成绩管理数据库studb中3张表的逻辑结构。【任务实施】字段名数据类型长度是否允许为空约束注释snochar10否主键学号snamevarchar20否姓名sexenum(男,女)是默认值为男性别birthdaydate是出生日期deptvarchar20是系别classvarchar20是班级学生表student的逻辑结构
1.分析并设计数据表的结构及约束字段名数据类型长度是否允许为空约束注释cnochar6否主键课程编号cnamevarchar20否课程名称ctypeenum(必修,选修)是考核类型credittinyint是学分remarkvarchar100是备注字段名数据类型长度是否允许为空约束注释idint(自动递增、无符号数)否主键序号snochar10否外键(引用student表sno)学号cnochar6否外键(引用course表cno)课程编号gradetinyint否成绩stu_credittinyint是学生该课程所获学分课程表course的逻辑结构成绩表score的逻辑结构
02任务3-2使用图形管理工具创建数据表
2.使用图形管理工具创建数据表根据任务3-1中学生表student表结构的设计,使用图形管理工具Navicat在studb数据库中创建学生表student。【任务分析】数据库创建以后,选定这个新创建的数据库作为当前默认的数据库,然后就可以在该数据库中创建数据表了。根据任务3-1中的分析和设计,学生表student中包括6个字段:学号字段sno,固定字符型,长度为10,主键,不允许为空值;姓名字段sname,可变长度字符型,长度为20,不允许为空值;性别字段sex,enum类型,值只能取“男”和“女”这两个值之一,并且设置了默认值为“男”;出生日期字段birthday,date类型,采用默认长度;系别字段dept,可变长度字符型,长度为20;班级字段class,可变长度字符型,长度为20;在表设计窗口中可以分别设置各字段的参数并保存表结构。?【任务描述】
2.使用图形管理工具创建数据表“新建表”——“添加字段”并设置参数——添加约束?【任务实施】
2.使用图形管理工具创建数据表【任务实施】操作演示
03任务3-3使用CREATETABLE语句创建数据表
3.使用CREATETABLE语句创建数据表根据任务3-1中各表结构的设计,使用CREAETABLE语句在studb数据库中创建数据表。(1)在Navicat的命令列界面中,使用命令创建学生表student(sno