“数据库类课程资源建设( MySQL 数据库应用与设计)”教学方向资源建设
1
【任务 3-4】使用 Create Table 语句创建多个包含约
束的数据表
【任务描述】
( 1)在数据库“ book”中,创建“图书类型 2”数据表,该数据表的结构数据如表 3-
24 所示。
表 3-24 “图书类型 2” 数据表的结构数据
字段名称 数据类型 字段长度 是否允许 Null 值 约束
图书类型代号 Varchar 2 否 主键约束
图书类型名称 Varchar 50 否 唯一约束
描述信息 Varchar 100 是 无
( 2)在数据库“ book”中,创建“读者类型 2”数据表,该数据表的结构数据如表 3-
25 所示。
表 3-25 “读者类型 2”数据表的结构数据
字段名称 数据类型 字段长度 是否允许 Null 值 约束
读者类型编号 Char 2 否 主键约束
读者类型名称 Varchar 30 否 唯一约束
限借数量 Smallint 否
限借期限 Smallint 否
续借次数 Smallint 否 默认值约束
借书证有效期 Smallint 否 默认值约束
超期日罚金 Decimal 否
( 3)在数据库“ book”中,创建 2 个数据表“出版社 2”和“图书信息 2”,“出版社
2”数据表的结构数据如表 3-26 所示,“图书信息 2”数据表的结构数据如表 3-27 所示。
表 3-26 “出版社 2”数据表的结构数据
字段名称 数据类型 字段长度 是否允许 Null 值 约束
出版社 ID Int 否 主键约束、自动编号的标识列
出版社名称 Varchar 50 否 唯一约束
出版社简称 Varchar 16 是 唯一约束
出版社地址 Varchar 50 是
“数据库类课程资源建设( MySQL 数据库应用与设计)”教学方向资源建设
2
邮政编码 Char 6 是
表 3-27 “图书信息 2”数据表的结构数据
字段名称 数据类型 字段长度 是否允许 Null 值 约束
ISBN 编号 Varchar 20 否 主键约束
图书名称 Varchar 100 否
作者 Varchar 40 是
价格 Decimal 否
出版社 Int 否 外键约束
出版日期 Date 是
图书类型 Varchar 2 否
封面图片 Blob 是
图书简介 Text 是
【任务实施】
首先打开 Windows 命令行窗口,登录 MySQL 服务器,然后选择数据库 book。
1.创建包含有主键约束、唯一约束和非空字段的数据表“图书类型 2”
对应的 SQL 语句如下:
Create Table 图书类型 2
(
图书类型代 号 char(2) Primary Key Not Null,
图书类型名称 Varchar(50) Unique Not Null,
描述信息 Varchar(100) Null
);
数据表“图书类型 2”创建完成时,在命令行窗口会显示“ Query OK, 0 rows affected
(1.43 sec)”提示信息。
2.创建包含有主键约束、唯一约束和默认值约束的数据表“读者类型 2”
对应的 SQL 语句如下:
“数据库类课程资源建设( MySQL 数据库应用与设计)”教学方向资源建设
3
Create Table 读者类型 2
(
读者类型编号 Char(2) Primary Key Not Null,
读者类型名称 Varchar(30) Unique Not Null,
限借数量 Smallint Not Null,
限借期限 Smallint Not Null,
续借次数 Smallint Not Null Default 1,
借书证有效期 Smallint Not Null Default 3,
超期日罚金 Decimal Not Null
) ;
数据表“读者类型 2”创建完成时,在命令行窗口会显示“ Query OK, 0 rows affected
(0.36 sec)”提示信息。
3.创建包含主键与外键关联的数据表
对应的 SQL 语句如表 3-28 所示。
表 3-28 创建包含主键与外键关联的数据表的 SQL 语句
行号 SQL 语句
01
02
03
04
05
06
07
08
09
10
11
Use book ;
Create Table 出版社 2
(
出版社 ID Int Primary Key Auto_Increment Not Null,
出版社名称 Varchar(50) Unique Not Null,
出版社简称 Varchar(16) Unique Null,
出版社地址 Varchar(50) Null,
邮政编码 Char(6) Null
) ;
Create Table 图书信息 2
(
“数据库类课程资源建设( MySQL 数据库应用与设计)”教学方向资源建设
4
12
13
14
15
16
17
18
19
20
21
22
ISBN 编号 Varchar(20) Primary Key Not Null,
图书名称 Varchar(100) Not Null,
作者 Varchar(40) Null,
价格 Decimal Not Null,
出版社 Int Not Null ,
Constraint FK_图书信息 _出版社 Foreign Key(出版社 ) References 出版社 2(出版社 ID),
出版日期 Date Null,
图书类型 Varchar(2) Not Null,
封面图片 Blob,
图书简介 Text
) ;
上述 SQL 语句中,使用 Constraint 关键字为外键约束命名。“图书信息 2”表中的“出
版社”依赖于“出版社 2”表中的“出版社 ID”,所以在创建数据表时,要先创建“出版社
2”数据表。
数据表“出版社 2”创建完成时,在命令行窗口会显示“ Query OK, 0 rows affected (0.33
sec)”提示信息。
数据表“图书信息 2”创建完成时,在命令行窗口会显示“ Query OK, 0 rows affected
(0.36 sec)”提示信息。
|
|