尚硅谷-MySQL数据库基础篇:创建表及序列练习

需积分: 0 0 下载量 122 浏览量 更新于2024-08-05 收藏 204KB PDF 举报
"本资源为综合练习,包含多个关于数据库表创建及关系设计的练习题目,主要用于学习和测试SQL技能,特别是MySQL数据库的基础操作。练习包括创建member、title、TITLE_COPY、rental和RESERVATION五张表,以及创建两个序列MEMBER_ID_SEQ和ti。" 在这段描述中,我们可以提取以下IT知识点: 1. 数据库表创建:描述中提到了创建多个表,如`member`、`title`、`TITLE_COPY`、`rental`和`RESERVATION`,这是数据库设计的基本步骤,用于存储和组织数据。 2. 表结构定义:每个表都有特定的列名,例如`member`表有`MEMBER_ID`、`LAST_NAME`等列,`title`表有`TITLE_ID`、`TITLE`等列。列有不同的数据类型,如`number`(数字)、`varchar`(可变字符)和`date`(日期),以及不同的约束,如主键、非空、唯一和默认值。 3. 主键和外键:在数据库关系模型中,主键是标识表中唯一记录的字段,如`member`中的`MEMBER_ID`。外键则是关联不同表之间的字段,如`rental`中的`Member_id`和`Copy_id`,它们分别引用`member`和`TITLE_COPY`表的主键。 4. 唯一性约束:某些列要求数据的唯一性,例如`JOIN_DATE`列有默认值`sysdate`并要求唯一,确保每个成员的加入日期是唯一的。 5. 默认值:在创建表时可以为列设置默认值,例如`JOIN_DATE`的默认值是系统当前日期`sysdate`,`rental`中的`book_date`和`Ac_ret_date`默认值分别是系统当前日期和当前日期加2天。 6. 检查约束:`rental`表中的`Ac_ret_date`和`Exp_ret_dte`可能需要满足特定的检查约束,确保返回日期合理。同样,`title`表中的`RATING`可能需要符合预定义的值,如G、PG、R等。 7. 序列:序列是一种自增的数字序列,如`MEMBER_ID_SEQ`和`ti`,通常用于生成自动递增的主键值。 8. 数据类型和长度:列的数据类型决定了可以存储的数据类型和大小,如`varchar2(60)`表示最多可以存储60个字符的字符串。 9. 关系数据库设计:这些练习展示了如何在关系数据库中设计和实现多表间的关联,如`rental`表与`member`、`TITLE_COPY`和`title`表之间的关联,以及`RESERVATION`表与`member`和`title`表的关联。 10. SQL语言:这些练习主要涉及SQL(结构化查询语言)的DML(数据操纵语言)部分,包括CREATE TABLE语句用于创建表,以及定义表结构和约束。 通过这些练习,学习者可以加深对数据库设计原则、SQL语法和关系数据库的理解,提升数据库管理能力。