《MySQL数据库项目式教程完整版课件全书电子教案教材课件(完整).pptx》由会员分享,可在线阅读,更多相关《MySQL数据库项目式教程完整版课件全书电子教案教材课件(完整).pptx(375页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、MySQLMySQL项目一 认识数据库学习MySQL数据库的特点学习目标MySQL了解数据库的基础知识掌握MySQL数据库的安装与配置具有使用Navicat工具的能力重点、难点MySQL 数据库概述一一、数据库概述MySQL1.信息(Information)信息是现实世界事物的存在方式或运动状态的反映,它通过多种形式展现,如文字、数码、符号、图形、声音等。信息具有可感知、可存储、可加工等自然属性,是各行各业不可或缺的资源。2.数据(Data)数据是对客观事件进行记录并可以鉴别的符号,是数据库中存储的基本对象,是信息的具体表现形式。如:(张三,男,2001.3,天津,计算机工程学院,电子商务,2
2、019)一、数据库概述MySQL3.数据处理数据处理是数据转化为信息的过程。4.数据库数据库,简而言之就是存放数据的仓库,是为了实现一定目的,按照某种规则组织起来的数据的集合。5.数据库系统数据库系统是由数据库及其管理软件组成的系统,是存储介质、处理对象和管理系统的集合体。一、数据库概述MySQL6.数据库管理系统数据定义功能数据操纵功能数 据 组 织存 储 与 管理数据库运行管理数据库保护功能数据库维护功能用于建立修改数据库的库结构用于实现对数据的增加删除、更新查询等操作用于分类组织、存储和管理数据字典、用户数据、存取路径等用 于 多 用户 环 境 下的 并 发 控制、安 全性 检 查 和存
3、 取 限 制控 制、完整 性 检 查等用于保护数据库中的数据实现数据库的数据载入转换、转储数据库的重组合重构等数据库接口功能通 过 与 操作 系 统 的联 机 处 理、分 时 系 统及 远 程 作业 输 入 等相 关 接 口实 现 数 据的 传 送一、数据库概述MySQL7.关系型数据库类别产品关系型数据库 MySQL、SQL rver、Access、Oracle、DB2等。非关系型数据库MongoDB、HBase、Redis、Neo4J等。表1常用数据库关系型数据库是一种建立在关系模型上的数据库,关系模型就是一张二维表。一、数据库概述MySQL7.关系型数据库IDNameSex1张三男2李四
4、男3王明女Student表行(row)列(column)ID=1Name=“张三”Sex=“男”ID=2Name=“李四”Sex=“男”ID=3Name=“王明”Sex=“女”Student对象图1关系模型二维表MySQL 认识MySQL数据库二二、认识MySQL数据库MySQL1.MySQL数据库简介MySQL数据库由瑞典MySQLAB公司开发,目前属于Oracle公司旗下的产品。作为关系型数据库最好的应用软件之一,MySQL是开放源代码的,因此任何人都可以下载并根据自己的需要对其进行修改。二、认识MySQL数据库MySQL2.MySQL数据库特点01超强的稳定性03强大的查询功能02可移植
5、性好04支持大型数据库05支持多种字符集存储二、认识MySQL数据库MySQL1.MySQL数据库的版本(1)MySQLCommunityServer(社区版)(2)MySQLEnterpriseServer(企业版)(3)MySQLStandardServer(标准版)MySQL MySQL的图形化管理工具三三、MySQL的图形化管理工具MySQL1.Navicat的安装Navicat官网下载地址为https:/,下载完成后,双击安装包即可进行安装。图2双击安装包后弹出的“许可协议”三、MySQL的图形化管理工具MySQL1.Navicat的安装图3选择安装路径三、MySQL的图形化管理工具
6、MySQL1.Navicat的安装图4安装完成界面三、MySQL的图形化管理工具MySQL2.Navicat的使用图5Navicat主界面MySQL 任务实施四四、任务实施MySQL1.MySQL的安装图6MySQL下载页面打开网址https:/ 任务总结五五、任务总结MySQL通过本项目的学习,了解了数据库的基本知识以及MySQL数据库的发展历史和特点,具有了安装与配置数据库的基本能力,并能使用Navicat工具连接MySQL数据库服务器的方法。MySQLMySQL欢迎同学们提问MySQLMySQL项目二 数据库设计学习数据库的设计范式学习目标MySQL了解数据模型的概念掌握数据库设计的步骤
7、具有绘制E-R图的能力重点重点、难点MySQL 数据模型一一、数据模型MySQL1.概念数据模型概念数据模型简称概念模型,是用户容易理解的现实世界特征的数据抽象,用于建立信息世界的模型。概念模型表示方法很多,其中最为著名的是P.P.Chen 于1976年提出的E-R(Entity-Relationship)模型即实体关系模型。一、数据模型MySQL1.概念数据模型E-R图由实体、属性、关系三部分构成:实体(Entity):客观存在的具体事物,也可以是抽象的事件。实体集(Entity Set):同类实体的集合,例如全体学生、全体教师等。属性(Atrribute):可以理解为实体的特征。例如,“学
8、生”这一实体的特征有姓名、性别、年龄等。实体属性联系名图1实体、属性、实体与实体间联系的描述方法一、数据模型MySQL1.概念数据模型关系(Relationship):关系是指两个或多个实体之间的关联关系。学生学号图21:1联系学生1班级学生2学生3学生4学生5学生6.学生n图31:n联系一、数据模型MySQL1.概念数据模型关系(Relationship):关系是指两个或多个实体之间的关联关系。课程1学生1学生2学生3学生4学生5.学生n图3m:n联系课程2课程3课程4课程n.一、数据模型MySQL2.逻辑数据模型逻辑数据模型由概念模型转换得到,简称逻辑模型,是一种面向数据库系统的模型,是具
9、体的DBMS所支持的数据模型,既要面向用户,又要面向系统,主要用于数据库管理系统(DBMS)的实现。字段(Field):在数据库中,表的“列”称为“字段”数据记录(Data Record):在数据库中,数据记录是指对应于数据源中一行信息的一组完整的相关信息表(Table):由行和列组成,行对应表中的记录,列对应表中的字段一、数据模型MySQL3.物理数据模型物理数据模型是物理层次上的数据模型,主要描述数据在物理存储介质上的组织结构,它与具体的DBMS相关,也与操作系统和硬件相关。一、数据模型MySQL4.数据模型的组成要素数据结构主 要 用 于 描述 系 统 的 静态 特 征,是所 研 究 的
10、 对象 类 型 的 集合数据操作数据约束条件是 指 对 数 据库 中 的 各 种对 象 的 实 例允 许 执 行 的操 作 集 合是 指 一 组 完整 性 规 则 的集 合一、数据模型MySQL5.关系模型在数据库系统中,数据模型通常可以分为层次模型、网状模型、关系模型三种,其中关系模型应用最为普遍。关系模型于20世纪70年代初由美国IBM公司的E.F.Codd提出,为数据库技术的发展奠定了理论基础。关系(Relation):一个关系就是一张二维表,如下表所示。学号姓名性别出生日期联系电话联系电话专业190001王成男1998.12.2613323898911软件技术190002张月女2001
11、.7.1115523550009电子商务表1学生信息表一、数据模型MySQL5.关系模型元组(Tuple):元组也称为记录,关系表中的每行对应一个元组。属性(Attribute):表中的一列即为一个属性,给每个属性取一个名称为属性名。属性的取值范围称为域。候选码(Candidate key):若关系中的某一属性或属性组的值能唯一标识一个元组,且从这个属性组中去除任何一个属性,都不再具有这样的性质,则称该属性或属性组为候选码(Candidate key)。主属性和非主属性:在关系中,候选码中的属性称为主属性,不包含在任何候选码中的属性称为非主属性。主键:若一个关系中有多个候选码,则选定其中一个为
12、主键。MySQL 数据库的设计步骤二二、数据库的设计步骤MySQL良好的数据库设计表现在以下三个方面:可提高系统的工作效率便于管理系统的进一步扩展。使应用程序的开发变得更加容易。二、数据库的设计步骤MySQL03将E-R图转换为多张表,进行逻辑设计,确认各表的主外键逻辑设计阶段02讨论数据库的设计是否满足客户的业务和数据处理需求,必须标识数据库要管理的关键对象或实体概要设计阶段01该阶段用于分析客户的业务和数据处理需求需求分析阶段MySQL 数据库的设计范式三三、数据库的设计范式MySQL1.第一范式第一范式(FirstnormalForm,1NF)的目标是确保每列的原子性。如果每列(或者每个
13、属性值)都是不可再分的最小数据单元(也称为最小的原子单元),则满足第一范式。如,学生基本信息表(学号,姓名,性别,出生日期,专业,课程,授课老师等)主键为“学号”,其他列全部依赖于主键列三、数据库的设计范式MySQL2.第二范式第二范式(Secondnormalform,2NF)在第一范式的基础上更进一层,其目标是确保表中的每列都和主键相关。如果一个关系满足第一范式(1NF),并且除了主键以外的其他列都全部依赖于该主键,则满足第二范式(2NF)如,学生基本信息表(学号,姓名,性别,出生日期,专业,课程,授课老师等)如果需要将“课程”列拆分为课程编号、课程名称、课程类型等信息时,以上各列并没有完
14、全依赖于主键“学号”列,因此将其转换成两个表:学生信息表(学号,姓名,性别,出生日期,专业等)课程信息表(课程编号、课程名称、课程类型、学时等)三、数据库的设计范式MySQL3.第三范式第三范式的目标是确保每列都和主键列直接相关,而不是间接相关。如如果要表示某个学生的各门课程的成绩信息,则需要再分解一个成绩表出来:成绩表(学号,课程编号,成绩)MySQL 数据表结构四四、数据表结构MySQL数据表结构是指对数据的数据项、数据结构、数据流、数据存储、处理逻辑等进行定义和描述,其目的是对数据流程图中的各个元素做出详细的说明。简而言之,数据表结构是描述数据的信息集合,是对系统中使用的所有数据元素的定
15、义的集合。MySQL 任务实施五五、任务实施MySQL1.分析确定实体集学生实体集(student)的属性有:学号、姓名、性别、出生日期、专业、联系电话、家庭住址。其中,用学号来唯一标识各学生信息,主键为学号。课程实体集(course)的属性有:课程编号、课程名称、授课教师、课程类型、学时、学分。其中,用课程编号来唯一标识各课程信息,课程编号为主键。成绩实体集(score)的属性有:学号、课程编号、成绩。五、任务实施MySQL2.E-R图设计学生课程选课成绩学号姓名性别出生日期专业联系电话家庭住址课程编号课程名称授课教师课程类型学分学时mn图4E-R图五、任务实施MySQL3.将E-R图转换为
16、关系模式学生表(student)(学号、姓名、性别、出生日期、专业、联系电话、家庭住址)。其中,用学号来唯一标识各学生信息,主键为学号。课程表(course):课程编号、课程名称、授课教师、课程类型、学时、学分。其中,用课程编号来唯一标识各课程信息,主键为课程编号。成绩表(score):学号、课程编号、成绩。其中,一个学生的学号可对应多门课程编号的成绩,而一个课程编号也有可能对应多个学生的成绩。五、任务实施MySQL4.规划数据表结构字段名字段说明备注stuNo学号 name姓名 sex性别值为“男”或“女”birthday出生日期 spec专业 phone联系电话 address家庭住址地址
17、不详表2学生表student结构五、任务实施MySQL4.规划数据表结构字段名字段说明备注couNo课程编号 couName课程名称 teacher授课教师 type课程类型 hours学时 credit学分表3课程表course结构五、任务实施MySQL4.规划数据表结构字段名字段说明备注stuNo学号引用student表主键couNo课程编号引用course表主键result成绩表4成绩表score结构MySQL 任务总结六六、任务总结MySQL通过对本项目的学习,掌握了在数据库设计中设计数据库的基本步骤,以及绘制E-R图的方法,并能通过E-R图确定各表的结构以及各表之间的关系。为后期的数
18、据库及表的创建做好了铺垫。MySQLMySQL欢迎同学们提问MySQLMySQL项目三 数据定义学习数据表的约束学习目标MySQL了解什么是SQL语言掌握数据库与数据表的创建方法具有使用Navicat工具完成数据定义的能力重点、难点MySQL SQL语言概述一一、SQL语言概述MySQL1.什么是SQL结构化查询语言SQL(Structured Query Language)是最重要的关系数据库操作语言,经过多年的发展,SQL语言已成为关系数据库的标准语言。一、SQL语言概述MySQL2.SQL的组成数据操纵语言(DML)数据查询语言DQL用来插入、修改和删除数据库中的数据用来对数据库中的数据
19、进行查询使用SELECT命令完成查询用来建立数据库、建立表等,主要包括CREATEDATABASE、CREATETABLE等用来控制数据库组件的存取许可、存取权限等,主要包括GRANT、REVODE命令数据控制语言DCl数据定义语言DDLMySQL 创建数据库二二、创建数据库MySQL1.创建数据库语句:createdatabasemystudent;图1创建数据库mystudent注意:在MySQL中,所有命令均以分号结束“;”,只有极少数命令可以省略不写分号。二、创建数据库MySQL2.查看数据库语句:showdatabase;图2查看数据库信息注意:在MySQL中,数据库的命名不区分大小
20、写。二、创建数据库MySQL3.选择数据库语句:usemystudent;图3选择数据库二、创建数据库MySQL4.修改数据库编码方式语法格式:alterdatabase数据库名defaultcharacterset编码方式collate编码方式_bin;图4修改编码格式语句:alterdatabasemystudentdefaultcharactersetutf8collateutf8_bin;二、创建数据库MySQL5.删除数据库语法格式:dropdatabase数据库名;图5删除数据库语句:dropdatabasetestdb;MySQL 创建数据表三三、创建数据表MySQL1.数据类型
21、数值型:数值型是指可以参与算术运算的类型,它可以分为整型和浮点型,其中浮点型又包括单精度浮点型和双精度浮点型数据类型字节数范围用途TINYINT1有符号值:-128127用于表示小整数值,如年龄。INT4有符号值:-231231-1用于表示大整数值,如学生人数。FLOAT4有符号值:-3.402823466E+381.175494351E-38用于表示单精度浮点数值,浮点数即小数。如成绩。DOUBLE8有符号值:-1.7976931348623157E+3082.2250738585072014E-308表示双精度浮点数值。与单精度浮点数的主要区别是双精度型表示范围更大。如科学计算。表1常用数
22、值类型三、创建数据表MySQL1.数据类型字符串型:字符串类型用于保存一系列的字符,这些字符在使用时采用单引号或双引号括起来表2常用字符串类型数据类型大小使用说明CHAR0255字符表示固定长度字符串VARCHAR065536字符表示可变长度字符串,该类型使用较为普遍TINYTEXT0255字节表示短文本字符串TEXT065535字节表示长文本数据。如日志、备注等BLOB0-65535字节二进制形式的长文本数据,用于存储图片信息。三、创建数据表MySQL1.数据类型日期时间型:用于保存日期或时间的数据类型,通常可以分为日期类型、时间类型和日期时间型表3常用日期时间类型数据类型字节数格式YEAR
23、1年份值,YYYY,如2019DATE4日期值,YYYY-MM-DD,如2019-06-01TIME3时间值,HH:MM:SS,如12:30:22DATETIME8混合日期和时间值,YYYY-MM-DD HH:MM:SS,如2019-06-01 12:30:22TIMESTAMP4混合日期和时间值,时间戳,1970-01-01 00:00:00/2038(该类型的取值必须在1970年2038年之间)三、创建数据表MySQL2.SQL中的运算符算术运算符:包括:+(加)、-(减)、*(乘)、/(除)、%(取模)表4算术运算符运算符用法说明+加法运算,求两个变量或表达式的和-减法运算,求两个变量或
24、表达式的差*乘法运算,求两个变量或表达式的积/除法运算,求两个变量或表达式的商%取模运算,求两个变量或表达式相除的余数,如5%2的值为1三、创建数据表MySQL2.SQL中的运算符比较运算符:用来比较两个变量或表达式的大小关系表5比较运算符运算符用法说明大于,如32,值为true小于,如3=大于等于,如3=2,值为true=小于等于,如3=2,值为false不等于,如32,值为true三、创建数据表MySQL2.SQL中的运算符逻辑运算符:用来对某个条件进行判断,以获得一个真或假的值表6逻辑运算符运算符用法说明NOT或!非运算或取反运算,如:!(成绩=80&成绩=80|成绩60,表示成绩大于等
25、于80或不及格的学生三、创建数据表MySQL3.建立数据表数据表名指需要创建的数据表的名字。字段名指数据表中的列名。数据类型指表中列的类型,用于指定可以存储指定类型格式的数据。create table 数据表名(字段1 数据类型,字段2 数据类型,字段n 数据类型);语法格式:参数说明:三、创建数据表MySQL3.建立数据表create table student(stuNo char(10),name varchar(50),sex char(2),birthday date,spec varchar(30),phone varchar(11),address varchar(255);示例
26、语句:三、创建数据表MySQL4.查看数据表查看所有表语句:showtables;图6查看数据表三、创建数据表MySQL4.查看数据表查看指定表的结构语法格式:describe表名;(也可简写为desc表名;)图7查看指定表的结构语句:descstudent;三、创建数据表MySQL4.查看数据表查看指定表的定义信息语法格式:showcreatetable数据表名;图8查看指定表的定义信息语句:showcreatetablestudentG三、创建数据表MySQL5.修改数据表alter table 旧表名 rename 新表名;修改表名语法格式:修改表名示例语句:alter table st
27、udent rename tb_student;三、创建数据表MySQL5.修改数据表alter table 表名 change 旧字段名 新字段名 新数据类型;修改字段名语法格式:修改字段名示例语句:alter table tb_student change name stuName varchar(50);三、创建数据表MySQL5.修改数据表alter table表名 modify 字段名 新数据类型;修改字段类型语法格式:修改字段类型示例语句:alter table tb_student modify stuNo varchar(10);三、创建数据表MySQL5.修改数据表alter
28、 table 表名 add 新字段名 数据类型 FIRST|AFTER 已经存在的字段名;添加字段语法格式:添加字段示例语句:alter table tb_student add politics varchar(20);三、创建数据表MySQL5.修改数据表alter table 表名 drop 字段名;删除字段语法格式:删除字段示例语句:alter table tb_student drop politics;三、创建数据表MySQL5.删除数据表drop table 表名;删除数据表语法格式:删除数据表示例语句:drop table tb_student;MySQL 数据表的约束四四、数
29、据表的约束MySQL表7MySQL中数据库表的常用约束约束名称含义及功能主键约束PRIMARY KEY主键,又称为主码,一个表中只允许有一个主键,能够唯一地标识表中的一条记录。主键约束要求主键字段中的数据唯一,不允许为空。外键约束FOREIGN KEY外键约束是在两个表之间建立关联。关联指的是在关系数据库中,相关表之间的联系。一个表可以有一个或多个外键,外键字段中的值允许为空,若不为空值,则每一个外键值必须等于另外一个表中主键的某个值。非空约束NOT NULL非空约束指字段的值不能为空。在同一个数据库表中可以定义多个非空字段。唯一约束UNIQUE唯一约束要求该列值唯一,不能重复。默认约束DEF
30、AULT在用户插入新的数据行时,如果没有为该列指定数据,那么系统会自动将默认值赋给该列,默认值可以是空值(NULL)或者自行指定。四、数据表的约束MySQL1.主键约束字段名 数据类型 primary key;主键约束语法格式:删除主键语法格式:alter table表名 drop primary key;四、数据表的约束MySQL1.主键约束alter table 表名 modify 字段名 数据类型 primary key;为已经存在的表添加主键语法格式:四、数据表的约束MySQL1.主键约束primary key(字段名1,字段名2,字段名n);创建表时指定复合主键语法格式:创建表时指定
31、复合主键示例语句:create table score(stuNo char(10),couNo char(10),result int,primary key(stuNo,couNo);四、数据表的约束MySQL1.主键约束alter table 表名 drop primary key;删除复合主键语法格式:删除复合主键示例语句:alter table score drop primary key;四、数据表的约束MySQL1.主键约束alter table 表名 add primary key(字段名1,字段名2,字段名n);为已经存在的表添加复合主键语法格式:为已经存在的表添加复合主键示
32、例语句:alter table score add primary key(stuNo,couNo);四、数据表的约束MySQL2.外键约束Constraint 外键名 foreign key(外键字段)references关联表名(关联字段);创建表时添加外键约束语法格式:创建表时添加外键约束示例语句:drop table score;create table score(stuNo char(10),couNo char(10),result int,primary key(stuNo,couNo),constraint fk_student_score1 foreign key(stuN
33、o)references student(stuNo);四、数据表的约束MySQL2.外键约束alter table 表名 drop foreign key 外键名;删除外键约束语法格式:删除外键约束示例语句:alter table score drop foreign key fk_student_score1;四、数据表的约束MySQL2.外键约束alter table 表名 add constraint 外键名 foreign key(外键字段)references关联表名(关联字段);为已存在的表添加外键约束语法格式:为已存在的表添加外键约束示例语句:alter table score
34、 add constraint fk_student_score1 foreign key(stuNo)references student(stuNo);四、数据表的约束MySQL3.非空约束字段名 数据类型 not null;创建表时添加非空约束语法格式:创建表时添加非空约束示例语句:drop table student;create table student(stuNo char(10)primary key,name varchar(50),sex char(2)not null,birthday date,spec varchar(30),phone varchar(11),add
35、ress varchar(255);四、数据表的约束MySQL3.非空约束alter table 表名 modify字段名 数据类型;删除非空约束语法格式:删除非空约束示例语句:alter table student modify sex char(2);四、数据表的约束MySQL3.非空约束alter table 表名 modify 字段名 数据类型 not null;为已经存在的表添加非空约束语法格式:为已经存在的表添加非空约束示例语句:alter table student modify sex char(2)not null;四、数据表的约束MySQL4.唯一约束字段名 数据类型 un
36、ique;创建表时添加唯一约束语法格式:创建表时添加唯一约束示例语句:create table course(couNo char(10)primary key,couName varchar(50)unique,teacher varchar(50);四、数据表的约束MySQL4.唯一约束alter table 表名 drop index字段名;删除唯一约束语法格式:删除唯一约束示例语句:alter table course drop index couName;四、数据表的约束MySQL4.唯一约束alter table 表名 modify 字段名 数据类型 unique;为已经存在的表添
37、加唯一约束语法格式:为已经存在的表添加唯一约束示例语句:alter table course modify couName varchar(50)unique;四、数据表的约束MySQL5.默认约束字段名 数据类型 default 默认值;创建表时添加默认约束语法格式:创建表时添加默认约束示例语句:drop table student;create table student(stuNo char(10)primary key,name varchar(50),sex char(2)not null,birthday date,spec varchar(30),phone varchar(11
38、),address varchar(255)default 地址不详);四、数据表的约束MySQL5.默认约束alter table 表名 modify字段名 数据类型;删除默认约束语法格式:删除默认约束示例语句:alter table student modify address varchar(255);四、数据表的约束MySQL5.默认约束alter table 表名 modify 字段名 数据类型 default 默认值;为已存在的表时添加默认约束语法格式:为已存在的表时添加默认约束示例语句:alter table student modify address varchar(255)
39、default 地址不详;四、数据表的约束MySQL6.CHECK约束CHECK(表达式)CHECK约束语法格式:CHECK约束示例语句:drop table student;create table student(stuNo char(10)primary key,name varchar(50),sex char(2)not null check(sex in(男,女),birthday date,spec varchar(30),phone varchar(11),address varchar(255);MySQL 使用Navicat工具实现数据定义五五、使用Navicat工具实现数
40、据定义MySQL1.使用Navicat创建数据库图9创建数据库在左侧“连接树”工具栏中右键“MYSQL”服务器连接,单击“新建数据库”;五、使用Navicat工具实现数据定义MySQL1.使用Navicat创建数据库图10创建数据库testStudent在“新建数据库”对话框中,输入数据库名为“testStudent”,字符集与排序规则均为“utf8”,单击“确定”按钮五、使用Navicat工具实现数据定义MySQL2.使用Navicat创建数据表图11创建数据表在左侧“连接树”工具栏中双击名为“testStudent”的数据库,双击“表”选项,在主工作区中选择“新建表”按钮五、使用Navic
41、at工具实现数据定义MySQL2.使用Navicat创建数据表图12创建数据表student在“新建表”对话框中依次输入表中各字段的名称、类型、长度等信息,输入完成后,点击“保存”按钮,根据提示输入表名为“student”,单击“确定”MySQL 任务实施六六、任务实施MySQL1.创建学生成绩管理数据库CREATE DATABASE mystudent;语句:六、任务实施MySQL2.在学生成绩管理数据库中创建数据表drop table student;create table student(stuNo char(10)primary key,name varchar(50)not nul
42、l,sex char(2)not null check(sex in(男,女),birthday date,spec varchar(30),phone varchar(11),address varchar(255)default 地址不详);创建学生表student语句:六、任务实施MySQLdrop table course;create table course(couNo char(10)primary key,couName varchar(50)not null unique,teacher varchar(50),type varchar(20),hours int not n
43、ull,credit int);创建课程表course语句:2.在学生成绩管理数据库中创建数据表六、任务实施MySQLdrop table score;create table score(stuNo char(10),couNo char(10),result int,primary key(stuNo,couNo),constraint fk_student_score foreign key(stuNo)references student(stuNo),constraint fk_course_score foreign key(couNo)references course(couN
44、o);创建成绩表score语句:2.在学生成绩管理数据库中创建数据表MySQL 任务总结七七、任务总结MySQL通过对本项目的学习,理解了SQL语言的概念,并学会利用SQL语句来完成数据库和数据库表的创建与管理。掌握了对数据库表的常用约束的使用方法,为后期数据库表的操作打下基础。MySQLMySQL欢迎同学们提问MySQLMySQL项目四 数据更新掌握插入、修改、删除数据表记录的方法学习数据更新的常用方法学习目标MySQL了解数据更新的概念具有使用Navicat工具实现数据更新的能力重点、难点MySQL 插入表记录一一、插入表记录MySQL1.插入单条记录into:用在insert关键字和表名
45、之间的可选关键字,可以省略。字段名列表:指定要插入的字段名,可以省略。如果不写字段名,表示要向表中的所有字段插入数据;如果写部分字段名,表示只为指定的字段插入数据,多个字段名之间用逗号分隔。值列表:表示为各字段指定一个具体的值,各值之间用逗号分隔,也可以是空值NULL。insert into (字段名列表)values(值列表);语法格式:参数说明:一、插入表记录MySQL1.插入单条记录insert into student(stuNo,name,sex,birthday,spec,phone,address)values(190001,刘海朋,男,2002-10-22,电子商务,13274
46、090013,陕西省西安市);插入完整的一条记录示例语句:一、插入表记录MySQL1.插入单条记录insert into student(stuNo,name,sex,address)values(190002,孙婷婷,女,四川省成都市);插入不完整的一条记录示例语句:注意:如果某些字段已经限制其约束为notnull时,在插入时这部分字段是必须得插入的一、插入表记录MySQL1.插入单条记录insert into student(stuNo,name,sex,birthday,spec,phone,address)values(190003,张晓飞,男,2002-07-15,电子商务,1551
47、9640547,default);插入带有字段默认值的记录示例语句:注意:其家庭住址字段address采用默认值为“地址不详”一、插入表记录MySQL1.插入单条记录insert into student(stuNo,name,sex,birthday,spec,phone,address)values(190001,刘海朋,男,2002-10-22,电子商务,13274090013,陕西省西安市);插入已存在主键值的记录示例语句:注意:执行上述命令后,会弹出错误信息“ERROR1062(23000):Duplicateentry190001forkeyPRIMARY”,表示系统不允许再重复插
48、入;若更改stuNo为190020,则允许插入;再次证明主键具有唯一性一、插入表记录MySQL2.插入多条记录字段名列表:此处的用法和插入单条记录的用法完全一样。值列表:表示为各字段指定一个具体的值,各值之间用逗号分隔,也可以是空值NULL。insert into (字段名列表)values(值列表),(值列表),(值列表);语法格式:参数说明:一、插入表记录MySQL2.插入多条记录insert into student(stuNo,name,sex,birthday,spec,phone,address)values(190004,杨航,男,2001-11-21,电子商务,18752665
49、012,天津市和平区),(190005,王先平,女,2002-05-10,电子商务,13223695985,山东省济南市),(190006,张月,女,2003-07-11,电子商务,13323898911,陕西省西安市);插入多条记录示例语句:MySQL 修改表记录二二、修改表记录MySQL1.单表数据修改:用在update和set关键字之间,表示要更新的表的名字,不可以省略。字段名1=值1:表示将该字段的值修改为一个新的值,如果有多个字段的值需要同时修改,则用逗号分隔。值可以是常量、变量或表达式。where条件:指定要修改记录的条件,可以省略。如果不写条件,则表示将表中所有记录的字段值修改成
50、新的值;若写了条件,则只修改满足条件的记录指定字段的值。update set 字段名1=值1,字段名2=值2,where 条件;语法格式:参数说明:二、修改表记录MySQL1.单表数据修改update studentset spec=电子商务where stuNo=190002;单表数据修改示例语句:update studentset birthday=2001/09/04,phone=13386661338where stuNo=190002;二、修改表记录MySQL2.多表数据修改:表示要更新的表的名字,多个表之间用逗号分隔。表名.字段名1=值1:表示将对应表名中字段的值修改为一个新的值,