模块2:创建和管理MySQL数据库与表(课件)-《MySQL数据库》同步教学(重庆大学版)

2024-07-08
| 67页
| 71人阅读
| 6人下载
普通

内容正文:

模块: 2 创建和管理MySQL数据库与表 据 库 数 MySQL 1 了解MySQL市场地位 4 建立MySQL学习兴趣 5 知 识 目 标 技 能 要 求 了解MySQL自带的几个数据库的作用。 掌握MySQL创建及维护数据库的方法。 掌握常用数据类型含义及适用范围。 掌握创建数据表的语法结构。 理解每一种数据完整性约束的作用和意义。 会使用命令和可视化两种方式创建数据库。 能熟练导入导出数据库。 能根据实际需求正确创建数据表。 能熟练修改、复制表结构和导入导出数据表。 会使用MySQL Workbench绘制E-R图。 任务2.1 创建数据库 模块2: 创建和管理MySQL数据库与表 数据库 MySQL 2.1.1 查看数据库 知识储备 SQL- 是Structured Query Language简称,结构化查询语言。一种标准的数据语言 SQL包含4个部分: (1)数据定义语言(DDL):DROP,CREATE,ALTER等 (2)数据操作语言(DML):INSERT,UPDATE,DELETE等 (3)数据查询语言(DQL):SELECT语句 (4)数据控制语言(DCL):GRANT,REVOKE,COMMIT,ROLLBACK等 MySQL是数据库管理系统,是开源的,意味着是免费的,如果必要,你可以修改源代码。 注意: SQL语言不区分大小写,一条语句结束使用”;” 0 MySQL 同步操作 2.1.1 查看数据库 1.MySQL命令提示符窗口下查看数据库 SHOW DATABASES; 0 MySQL 同步操作 2.1.1 查看数据库 0 MySQL 2.1.1 查看数据库 知识储备 2.MySQL自带数据库 information_schema:information_schema提供了访问数据库元数据的方式。所谓元数据是关于数据的数据,如数据库名或表名,列的数据类型,或访问权限等。有时用于表述该信息的其他术语包括“数据词典”和“系统目录”。换句话说,information_schema是一个信息数据库,保存了MySQL服务器维护的所有其他数据库的信息,如数据库名、数据表、列的数据类型或访问权限等。 mysql:它是mysql的核心数据库,主要负责存储数据库的用户、权限设置、关键字等mysql自己需要使用的控制和管理信息。  performance_schema:主要用于收集数据库服务器性能参数。并且库里表的存储引擎均为performance_schema,而用户是不能创建存储引擎为performance_schema的表。 Sys:Sys库所有的数据源来自:performance_schema。目标是把performance_schema的复杂度降低,让DBA能更好地阅读这个库里的内容。让DBA更快地了解DB的运行情况。 0 MySQL 1.Create database 语句 2.1.2 创建数据库 知识储备 CREATE DATABASE [IF NOT EXISTS] <数据库名> [[DEFAULT] CHARACTER SET <字符集名>] [[DEFAULT] COLLATE <校对规则名>]; l <数据库名>:创建数据库的名称。MySQL的数据存储区将以目录方式表示 MySQL 数据库,因此数据库名称必须符合操作系统的文件夹命名规则,不能以数字开头,尽量要有实际意义。注意在 MySQL 中不区分大小写。l IF NOT EXISTS:在创建数据库之前进行判断,只有该数据库目前尚不存在时才能执行操作。此选项可以用来避免数据库已经存在而重复创建的错误。l [DEFAULT] CHARACTER SET:指定数据库的字符集。字符集是用来定义 MySQL 存储字符串的方式,其目的是为了避免在数据库中存储的数据出现乱码的情况。如果在创建数据库时不指定字符集,那么就使用系统的默认字符集。[DEFAULT] COLLATE:指定字符集的默认校对规则。校对规则定义了比较字符串的方式。 0 MySQL 同步操作 2.1.2 创建数据库 CREATE DATABASE mydb; (1)创建班级管理数据库 (2)创建班委数据库 (3)创建团委数据库 CREATE DATABASE IF NOT EXISTS mydb2 DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; (1)创建院部管理数据库 (2)创建专业教师数据库 (3)创建学管教师数据库 0 MySQL 同步操作 2.1.2 创建数据库 使用向导创建数据库 0 MySQL 同步操作 2.1.2 创建数据库 使用向导创建如下数据库: (1)创建课程管理数据库(coursedb) (2)创建教材管理数据库(bookdb) (3)创建实验室设备管理数据库(equipmentdb) 0 MySQL 任 务 小 结 l 了解MySQL自带的几个数据库的作用l 使用 CREATE DATABASE语句创建数据库 l 使用Workbench向导创建数据库 任务2.2 管理数据库 模块2: 创建和管理MySQL数据库与表 数据库 MySQL 1.使用Drop database 语句删除数据库 2.2.1 删除数据库 知识储备 DROP DATABASE <数据库名> DROP DATABASE mydb; 删除个人已创建的部分数据库 同步操作 2. MySQL Workbench中删除数据库 删除个人已创建的部分数据库 选中要删除的数据库名,右键选择Drop Schema ...。 0 MySQL 1.使用ALTTER DATABASE命令 2.2.2 修改数据库默认字符集 知识储备 ALTER DATABASE 数据库名 [[DEFAULT] CHARACTER SET 字符集名]  [[DEFAULT] COLLATE 校对规则名]; CREATE DATABASE mydb; ALTER DATABASE mydb DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; 修改个人已创建的部分数据库的字符集设置 同步操作 0 MySQL 2. 使用MySQL Workbench修改数据库字符集 2.2.2 修改数据库默认字符集 同步操作 修改个人已创建的部分数据库的字符集设置 0 MySQL 2.2.3导入导出数据库 导出 同步操作 (1)以Selt-Contained File格式导出2个个人已创建的数据库。 (2)以Dump Project Folder选项导出2个个人已创建的数据库。 0 MySQL 2.2.3导入导出数据库 导入 同步操作 (1)以Selt-Contained File格式导入前例导出的数据库。 (2)以Dump Project Folder选项导入前例导出的数据库。 0 MySQL 任 务 小 结 l 如何修改一个数据库的属性l 如何使用命令删除数据库 l 如何导入导出建数据库 任务2.3 创建数据表 模块2: 创建和管理MySQL数据库与表 数据库 MySQL 1. 数值类型 2.3.1 常用数据类型 知识储备 表2.1整数类型 类型名称 存储需求 说明 INT(INTEGER) 4字节 (-2147483648,2147483647) BIGINT 8字节 大整数 表2.2浮点数与定点数类型 类型名称 存储需求 说明 FLOAT 4字节 单精度浮点数 DOUBLE 8字节 双精度浮点数 DECIMAL(M,D) M+2字节 M一般表示小数点左边限定的位数,D表示小数点右边限定的位数。 0 MySQL 2. 字符串类型 2.3.1 常用数据类型 知识储备 表2.3文本字符串类型 类型名称 存储范围 说明 VARCHAR(M) 1≤M≤255 可变长度,0-65535个字符 TEXT L+2字节,L<216 小的非二进制字符串 表2.4二进制字符串类型 类型名称 存储范围 说明 BINARY(M) M字节 固定长度二进制字符串 VARBINARY(M) M+1字节 可变长度二进制字符串 BLOB(M) L+2字节,L<216 小 BLOB 0 MySQL 3. 日期时间类型 2.3.1 常用数据类型 知识储备 表2.5日期时间类型 类型名称 日期格式 说明 YEAR YYYY 1字节,1901~2155 TIME HH:MM:SS 3字节 DATE YYYY-MM-DD 3字节,1000-01-01~9999-12-31 DATETIME YYYY-MM-DD HH:MM:SS 8字节 TIMESTAMP YYYY-MM-DD HH:MM:SS 4字节 0 MySQL 2.3.2 CREATE TABLE语句 知识储备 CREATE TABLE 表名( 字段名1 数据类型 [约束|注释], 字段名2 数据类型 [约束|注释], ... 字段名n 数据类型 [约束|注释], [约束] ); 创建一个教师表TEACHERS 同步操作 字段名 类型 约束 说明 ID INT 编号 TNO VARCHAR(20) 工号 TNAME VARCHAR(20) 姓名 USE MYDB; CREATE TABLE TEACHERS( ID INT , TNO VARCHAR(20), TNAME VARCHAR(20) ); 0 MySQL 2.3.2 CREATE TABLE语句 同步操作 部门表DEPARTS 字段名 类型 约束 说明 ID INT 编号 DNAME VARCHAR(20) 院部名称 专业表MAJORS 字段名 类型 约束 说明 ID INT 编号 MNAME VARCHAR(30) 专业名称 班级表MCLASSS 字段名 类型 约束 说明 ID INT 编号 MNAME VARCHAR(30) 班级名称 学生表STUDENTS 字段名 类型 约束 说明 ID INT 编号 SNO VARCHAR(20) 学号 MNAME VARCHAR(30) 姓名 0 MySQL 2.3.3 DROP TABLE语句 知识储备 DROP TABLE 表名[,表2,...]; 同步操作 课堂练习: (1)使用命令删除DEPARTS表。 (2)使用命令一次性删除MAJORS表、MCLASSS表。 (3)直接右键删除STUDENTS表。 0 MySQL 2.3.4 数据完整性 知识储备 同步操作 1. 主键约束 在MySQL中,主键(PRIMARY KEY)又称主码,可以是一个字段,也可以是多列组成的联合字段。主键列要求数据唯一且不能为空,在一个表中主键只能有一个。 为教师表TEACHERS添加主键约束 字段名 类型 约束 说明 ID INT 主键 编号 TNO VARCHAR(20) 工号 TNAME VARCHAR(20) 姓名 DROP TABLE TEACHERS; CREATE TABLE TEACHERS( ID INT PRIMARY KEY, TNO VARCHAR(20), TNAME VARCHAR(20) ); DROP TABLE TEACHERS; CREATE TABLE TEACHERS( ID INT, TNO VARCHAR(20), TNAME VARCHAR(20), PRIMARY KEY(ID) ); 0 MySQL 2.3.4 数据完整性 同步操作 部门表DEPARTS 字段名 类型 约束 说明 ID INT 主键 编号 DNAME VARCHAR(20) 院部名称 专业表MAJORS 字段名 类型 约束 说明 ID INT 主键 编号 MNAME VARCHAR(30) 专业名称 班级表MCLASSS 字段名 类型 约束 说明 ID INT 主键 编号 MNAME VARCHAR(30) 班级名称 学生表STUDENTS 字段名 类型 约束 说明 ID INT 主键 编号 SNO VARCHAR(20) 学号 MNAME VARCHAR(30) 姓名 0 MySQL 2.3.4 数据完整性 知识储备 同步操作 2. 自增约束 在 MySQL 中,一个整型字段被定义为自增长后,这个字段的值就不再需要用户输入数据了,而是由系统根据定义自动赋值。每增加一条记录,主键会自动以相同的步长进行增长。关键字为AUTO_INCREMENT。 为教师表TEACHERS添加自增约束 字段名 类型 约束 说明 ID INT 自增、主键 编号 TNO VARCHAR(20) 工号 TNAME VARCHAR(20) 姓名 DROP TABLE TEACHERS; CREATE TABLE TEACHERS( ID INT AUTO_INCREMENT PRIMARY KEY, TNO VARCHAR(20), TNAME VARCHAR(20) ); 0 MySQL 2.3.4 数据完整性 同步操作 部门表DEPARTS 字段名 类型 约束 说明 ID INT 自增、主键 编号 DNAME VARCHAR(20) 院部名称 专业表MAJORS 字段名 类型 约束 说明 ID INT 自增、主键 编号 MNAME VARCHAR(30) 专业名称 班级表MCLASSS 字段名 类型 约束 说明 ID INT 自增、主键 编号 MNAME VARCHAR(30) 班级名称 学生表STUDENTS 字段名 类型 约束 说明 ID INT 自增、主键 编号 SNO VARCHAR(20) 学号 MNAME VARCHAR(30) 姓名 0 MySQL 2.3.4 数据完整性 知识储备 同步操作 3. 唯一约束 唯一约束(Unique Key)是指所约束字段中的值不能重复出现。与主键约束相同之处是都可以确保被约束字段数据的唯一性,不同之处是唯一约束在一个表中可有多个,且允许有空值,但是只能有一个空值。而主键约束在一个表中只能有一个,且不允许有空值。 为教师表TEACHERS添加唯一约束 字段名 类型 约束 说明 ID INT 自增、主键 编号 TNO VARCHAR(20) 唯一 工号 TNAME VARCHAR(20) 姓名 DROP TABLE TEACHERS; CREATE TABLE TEACHERS( ID INT AUTO_INCREMENT PRIMARY KEY, TNO VARCHAR(20) UNIQUE, TNAME VARCHAR(20) ); 0 MySQL 2.3.4 数据完整性 同步操作 部门表DEPARTS 字段名 类型 约束 说明 ID INT 自增、主键 编号 DNAME VARCHAR(20) 唯一 院部名称 专业表MAJORS 字段名 类型 约束 说明 ID INT 自增、主键 编号 MNAME VARCHAR(30) 唯一 专业名称 班级表MCLASSS 字段名 类型 约束 说明 ID INT 自增、主键 编号 MNAME VARCHAR(30) 唯一 班级名称 学生表STUDENTS 字段名 类型 约束 说明 ID INT 自增、主键 编号 SNO VARCHAR(20) 唯一 学号 MNAME VARCHAR(30) 姓名 0 MySQL 2.3.4 数据完整性 知识储备 同步操作 4. 非空约束 非空约束(NOT NULL)所指字段的值不能为空。 为教师表TEACHERS添加非空约束 字段名 类型 约束 说明 ID INT 自增、主键 编号 TNO VARCHAR(20) 唯一 工号 TNAME VARCHAR(20) 非空 姓名 DROP TABLE TEACHERS; CREATE TABLE TEACHERS( ID INT AUTO_INCREMENT PRIMARY KEY, TNO VARCHAR(20) UNIQUE, TNAME VARCHAR(20) NOT NULL ); 0 MySQL 2.3.4 数据完整性 同步操作 部门表DEPARTS 字段名 类型 约束 说明 ID INT 自增、主键 编号 DNAME VARCHAR(20) 唯一、非空 院部名称 专业表MAJORS 字段名 类型 约束 说明 ID INT 自增、主键 编号 MNAME VARCHAR(30) 唯一 、非空 专业名称 班级表MCLASSS 字段名 类型 约束 说明 ID INT 自增、主键 编号 MNAME VARCHAR(30) 唯一、非空 班级名称 学生表STUDENTS 字段名 类型 约束 说明 ID INT 自增、主键 编号 SNO VARCHAR(20) 唯一 学号 MNAME VARCHAR(30) 非空 姓名 0 MySQL 2.3.4 数据完整性 知识储备 同步操作 5. 默认值 在MySQL中,默认值(Default)的完整称呼是“默认值约束(Default Constraint)”,用来指定某列的默认值。在表中插入一条新记录时,如果没有为某个字段赋值,系统就会自动为这个字段插入默认值。 为教师表TEACHERS的密码字段添加默认值 字段名 类型 约束 说明 ID INT 自增、主键 编号 TNO VARCHAR(20) 唯一 工号 TNAME VARCHAR(20) 非空 姓名 PWD VARCHAR(50) 默认值:abc 密码 DROP TABLE TEACHERS; CREATE TABLE TEACHERS( ID INT AUTO_INCREMENT PRIMARY KEY, TNO VARCHAR(20) UNIQUE, TNAME VARCHAR(20) NOT NULL, PWD VARCHAR(50) DEFAULT ‘abc’ ); 0 MySQL 2.3.4 数据完整性 同步操作 专业表MAJORS 字段名 类型 约束 说明 ID INT 自增、主键 编号 MNAME VARCHAR(30) 唯一 、非空 专业名称 STATE INT 默认值:0 状态(0:在招、1:停招) 班级表MCLASSS 字段名 类型 约束 说明 ID INT 自增、主键 编号 MNAME VARCHAR(30) 唯一、非空 班级名称 TYPEID INT 默认值:1 类型(1:普招、2:单招、3:扩招) 学生表STUDENTS 字段名 类型 约束 说明 ID INT 自增、主键 编号 SNO VARCHAR(20) 唯一 学号 MNAME VARCHAR(30) 非空 姓名 PWD VARCHAR(50) 默认值:abc 密码 0 MySQL 2.3.4 数据完整性 知识储备 同步操作 6. 检查约束 检查约束(CHECK)是用来检查数据表中字段值有效性的一种手段,设置检查约束时要根据实际情况进行设置,这样能够减少无效数据的输入。检查约束使用 CHECK 关键字。 为教师表TEACHERS的工资字段添加检查约束 字段名 类型 约束 说明 ID INT 自增、主键 编号 TNO VARCHAR(20) 唯一 工号 TNAME VARCHAR(20) 非空 姓名 PWD VARCHAR(50) 默认值:abc 密码 SALARY DECIMAL(5,2) 不能小于0 工资 DROP TABLE TEACHERS; CREATE TABLE TEACHERS( ID INT AUTO_INCREMENT PRIMARY KEY, TNO VARCHAR(20) UNIQUE, TNAME VARCHAR(20) NOT NULL, PWD VARCHAR(50) DEFAULT ‘abc’, SALARY DECIMAL(5,2) CHECK(SALARY>=0) ); 0 MySQL 2.3.4 数据完整性 同步操作 学生表STUDENTS 字段名 类型 约束 说明 ID INT 自增、主键 编号 SNO VARCHAR(20) 唯一 学号 MNAME VARCHAR(30) 非空 姓名 PWD VARCHAR(50) 默认值:123456 密码 AGE INT 0-150之间 年龄 0 MySQL 2.3.4 数据完整性 知识储备 同步操作 7. 外键约束 在MySQL中, 外键约束(FOREIGN KEY)是表的一个特殊字段,经常与主键约束一起使用。对于两个具有关联关系的表而言,相关联字段中主键所在的表就是主表(父表),外键所在的表就是从表(子表),通过 FOREIGN KEY 关键字来指定外键。 给教师表TEACHERS添加一个关联DEPARTS表的外键 字段名 类型 约束 说明 ID INT 自增、主键 编号 TNO VARCHAR(20) 唯一 工号 TNAME VARCHAR(20) 非空 姓名 PWD VARCHAR(50) 默认值:abc 密码 SALARY DECIMAL(5,2) 不能小于0 工资 DEPARTID INT 外键 所属院部ID 字段名 类型 约束 说明 ID INT 自增、主键 编号 DNAME VARCHAR(20) 唯一、非空 院部名称 DROP TABLE TEACHERS; CREATE TABLE TEACHERS( ID INT AUTO_INCREMENT PRIMARY KEY, TNO VARCHAR(20) UNIQUE, TNAME VARCHAR(20) NOT NULL, PWD VARCHAR(50) DEFAULT ‘abc’, SALARY DECIMAL(5,2) CHECK(SALARY>=0). DEPARTID INT , FOREIGN KEY(DEPARTID) REFERENCES DEPARTS(ID) ); 0 MySQL 2.3.4 数据完整性 同步操作 专业表MAJORS 字段名 类型 约束 说明 ID INT 自增、主键 编号 MNAME VARCHAR(30) 唯一 、非空 专业名称 STATE INT 默认值:0 状态(0:在招、1:停招) DEPARTID INT 外键 所属院部ID 班级表MCLASSS 字段名 类型 约束 说明 ID INT 自增、主键 编号 MNAME VARCHAR(30) 唯一、非空 班级名称 TYPEID INT 默认值:1 类型(1:普招、2:单招、3:扩招) MAJORID INT 外键 所属专业ID 学生表STUDENTS 字段名 类型 约束 说明 ID INT 自增、主键 编号 SNO VARCHAR(20) 唯一 学号 MNAME VARCHAR(30) 非空 姓名 PWD VARCHAR(50) 默认值:123456 密码 MCLASSID INT 外键 所在班级ID 0 MySQL 同步操作 2.3.5 Workbench可视化建表 0 MySQL 同步操作 2.3.5 Workbench可视化建表 表2.7课程表COURSES 字段名 数据类型 约束 说明 ID INT 自增、主键 自动编号 CNAME VARCHAR(50) 非空、唯一 课程名称 DEPARTID INT 外键 所属院部ID 表2.8专业类型表MAJOR_TYPE 字段名 数据类型 约束 说明 ID INT 自增、主键 自动编号 TNAME VARCHAR(20) 非空、唯一 名称,如普招、单招 表2.9专业课程体系表MAJOR_GRADE_TERM_COURSES 字段名 数据类型 约束 说明 ID INT 自增、主键 自动编号 GRADE INT 非空 年级,如2020 TERM VARCHAR(20) 非空 学期,如2020-2021-1 MAJORID INT MAJOR外键 所属专业 COURSEID INT COURSES外键 课程ID TYPEID INT MAJOR_TYPE外键 生源类型ID 0 MySQL 任 务 小 结 l 掌握数值、字符串、日期时间等常用数据类型l 掌握创建数据表的语法格式 l 创建数据表时会正确使用数据完整性约束: 主键、自增、唯一、非空、默认值、检查、外键 l 如何根据实际需求创建数据表 任务2.4 管理数据表 模块2: 创建和管理MySQL数据库与表 数据库 MySQL 2.4.1 修改表结构 知识储备 同步操作 1. ALTER TABLE语句 在 MySQL 中,修改数据表的操作也是数据库管理中必不可少的,可以使用 ALTER TABLE 语句来改变原有表的结构,例如增加或删减列、更改原有列类型、重新命名列或表等。 ALTER TALBE 表名 [ ADD COLUMN 列名 类型 | CHANGE COLUMN 旧列名 新列名 新列类型 | ALTER COLUMN 列名 SET DEFAULT 默认值| DROP DEFAULT | MODIFY COLUMN 列名 类型 | DROP COLUMN 列名 | RENAME TO 新表名 | CHARACTER SET 字符集名 | COLLATE 校对规则名 ] ADD COLUMN :添加新字段。CHANGE COLUMN:修改字段名及数据类型。ALTER COLUMN:取消默认值,或设置默认值。MODIFY COLUM:修改字段类型。DROP COLUMN:删除字段。RENAME TO:修改表名。CHARACTER SET:修改字符集。COLLATE:修改校对规则。 0 MySQL 同步操作 2.4.1 修改表结构 0 MySQL 2.4.1 修改表结构 同步操作 学生表STUDENTS 字段名 类型 约束 说明 ID INT 自增、主键 编号 SNO VARCHAR(20) 唯一 学号 MNAME VARCHAR(30) 非空 姓名 PWD VARCHAR(50) 默认值:123456 密码 AGE INT 0-150之间 年龄 (1)删除AGE字段 (2)新增CREATETIME(创建时间), UPTIME(更新时间) 字段,均为日期类型 (3)新增BIRTHDAY(生日)字段,VARCHAR(20) (4)修改PWD字段默认值为:abc (5)修改MNAME字段的类型为:VARCHAR(20) 0 MySQL 2.4.2 复制表结构及数据 知识储备 在实际开发过程中,有时需要建立一个与某表结构相似的表,或需要批量对某表数据进行处理,为防止误操作,可以先备份一个副表。 1. 仅复制表结构 CREATE TABLE 新表名 LIKE 旧表名 或者: CREATE TABLE 新表名 SELECT *|字段列表 FROM 旧表名 WHERE 0 SELECT * :表示所有字段 SELECT 字段列表 :可以只选取部分字段 还可加WHERE来筛选记录 2. 复制表结构及数据 CREATE TABLE 新表名 SELECT *|字段列表 FROM 旧表名 或者: CREATE TABLE 新表名 LIKE 旧表名 INSERT INTO 新表名 SELECT *|字段列表 FROM 旧表名 0 MySQL 2.4.2 复制表结构及数据 同步操作 (1)仅复制MAJORS表结构,新表名为MAJOR2。 (2)复制MAJORS表结构及数据,新表名为MAJOR3。 (3)使用其他语法格式,自行复制其他表的结构或数据。 0 MySQL 2.4.3 导入导出数据表 知识储备 同步操作 通过对数据表的导入导出,可以实现 MySQL 数据库服务器与其他数据库服务器间移植数据。 1. 导出 0 MySQL 2.4.3 导入导出数据表 知识储备 同步操作 1. 导入 0 MySQL 2.4.3 导入导出数据表 同步操作 (1)导出STUDENTS表后再导入。 (2)同时导出MAJOR表和STUDENTS表后再导入。 (3)导出一个表,导入到另一个数据库中。 0 MySQL 任 务 小 结 l 掌握修改数据表结构的语法: (增、改)字段名、字段类型、字段完整性约束等l 掌握复制表结构及数据的方法 l 会导入导出数据表 任务2.5 绘制E-R图 模块2: 创建和管理MySQL数据库与表 数据库 MySQL 2.5.1 绘制E-R图 知识储备 同步操作 E-R图也称实体-联系图(Entity Relationship Diagram),提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。 第一步:新建模型文件。File菜单下“New Model”表示新建,“Open Model”表示打开已有的模型文件 0 MySQL 2.5.1 绘制E-R图 同步操作 第二步:新建数据库。单击工具栏中“Add New Schema”按钮,会生成一个“new_schema1”的新标签。 0 MySQL 2.5.1 绘制E-R图 同步操作 第三步:双击“Add Diagram”进入设计界面。 0 MySQL 2.5.1 绘制E-R图 同步操作 第四步:E-R模型设计主界面。在模型设计界面中,可以建表、建视图以及创建表之间的关联关系等。 0 MySQL 2.5.1 绘制E-R图 同步操作 绘制学生信息管理数据库STUDB的E-R图 0 MySQL 2.5.2 E-R图与数据库转换 同步操作 (1)E-R图导出为SQL脚本文件 0 MySQL 2.5.2 E-R图与数据库转换 同步操作 (2)SQL脚本生成数据库 0 MySQL 2.5.1 绘制E-R图 同步操作 将绘制的E-R图导出,并生成数据库 0 MySQL 2.5.2 E-R图与数据库转换 同步操作 (3)数据库转换成E-R图 0 MySQL 2.5.1 绘制E-R图 同步操作 新建一个数据库erp,并使用代码创建两个表,一个商品类别表TYPE和一个商品表GOODS。生成对应的E-R图。 表2.10 商品类别TYPE 字段名 数据类型 约束 说明 TYPEID INT 自增、主键 自动编号 TYPENAME VARCHAR(50) 非空、唯一 类别名称 PARENTID INT 父级ID 表2.11 商品GOODS 字段名 数据类型 约束 说明 GOODSID INT 自增、主键 自动编号 BARCODE VARCHAR(6) 非空、唯一 商品条形码 TYPEID INT 外键 商品类别ID GOODSNAME VARCHAR(50) 非空 商品名称 STOREPRICE DECIMAL(8,2) 进货价 SALEPRICE DECIMAL(8,2) 卖出价 DISCOUNT DECIMAL(8,2) 折扣 STOCKNUM INT 库存数 STOCKDATE DATETIME 入库时间 0 MySQL 任 务 小 结 如何使用Workbench工具绘制E-R图 如何将E-R图转换为数据库 如何将已建成的数据库生成相应的E-R图 总 结 创建、导出、导入数据库 数据完整性(自增、主键、唯一、不同、默认值、外键) 创建、修改数据表结构 绘制E-R图 0 MySQL 谢 谢! $$

资源预览图

模块2:创建和管理MySQL数据库与表(课件)-《MySQL数据库》同步教学(重庆大学版)
1
模块2:创建和管理MySQL数据库与表(课件)-《MySQL数据库》同步教学(重庆大学版)
2
模块2:创建和管理MySQL数据库与表(课件)-《MySQL数据库》同步教学(重庆大学版)
3
模块2:创建和管理MySQL数据库与表(课件)-《MySQL数据库》同步教学(重庆大学版)
4
模块2:创建和管理MySQL数据库与表(课件)-《MySQL数据库》同步教学(重庆大学版)
5
模块2:创建和管理MySQL数据库与表(课件)-《MySQL数据库》同步教学(重庆大学版)
6
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。