实验二:数据库表的建立和操作_表结构


第二个实验
根据上述要求,可以设计以下3个表的表结构:

  1. 借书表(book_borrow):
  • 借阅编号(borrow_id,主键)
  • 书籍名称(book_name)
  • 读者编号(user_id)
  • 借阅日期(borrow_date)
  • 应还日期(due_date)
  1. 还书表(book_return):
  • 还书编号(return_id,主键)
  • 借阅编号(borrow_id)
  • 还书日期(return_date)
  • 是否逾期(is_overdue)
  1. 用户表(user):
  • 读者编号(user_id,主键)
  • 读者姓名(user_name)
  • 读者性别(user_gender)
  • 读者年龄(user_age)
  • 读者电话(user_phone)

DDL语句如下:

  1. 创建借书表:
CREATE TABLE book_borrow(
  borrow_id INT PRIMARY KEY,
  book_name VARCHAR(50),
  user_id INT,
  borrow_date DATE,
  due_date DATE
 );
  1. 创建还书表:
CREATE TABLE book_return(
  return_id INT PRIMARY KEY,
  borrow_id INT,
  return_date DATE,
  is_overdue BOOLEAN
 );
  1. 创建用户表:
CREATE TABLE user(
  user_id INT PRIMARY KEY,
  user_name VARCHAR(50),
  user_gender VARCHAR(10),
  user_age INT,
  user_phone VARCHAR(20)
 );

根据DDL语句创建表后,可以进行以下操作:

  1. 查询借书表中的记录:
SELECT * FROM book_borrow;
  1. 查询还书表中的记录:
SELECT * FROM book_return;
  1. 查询用户表中的记录:
SELECT * FROM user;

对于图中的实验内容,主要是在已经创建的6个表的基础上进行表结构的创建与操作、字段属性的设置、主键、外键和索引的设置以及表之间关系的建立。具体内容如下:

  1. 表结构的创建与修改:
    (1) 根据表9-2创建表名称为“教师2”的表结构,并输入2条记录。
  2. 表中字段属性的设置:
    (1) 为“教师”表的“职称”字段设置查阅属性,实现从下拉列表框中选择教师的职称。
    (2) 为“教师”表的“学历”字段设置默认值为“博士”。
    (3) 为“教师”表的“工作日期”字段设置输人掩码为短日期格式。
  3. 主键、外键和索引的设置:
    (1) 为“教师”表中的“职称”和“工资”字段设置索引,先按“职称”的升序排序,职称相同的再按“工资”的降序排序。
  4. 表之间关系的建立:
    (1) 为所有表设置主键,进而分析并建立所有表之间的关系。
  5. 复制表和建立关系:
    (1) 复制“学生”表和“选课”表到当前数据库中,表名分别为“学生表2”和“选课表2”。
    (2) 建立“学生表2”和“选课表2”之间的关系,之后从“学生表2”中删除学号为“10010001”的学生的记录,要求在删除这个学生的记录之后,“选课表2”中可以自动删除这名学生的所有相关记录。

针对图中的拓展实践部分,需要根据要求创建一个“图书借阅管理”数据库,具体要求如下:

  1. 创建3个表:借书、还书和用户。根据要求设计每个表的表结构并录入至少5条记录。
  2. 每个表的字段名称、数据类型以及字段长度等属性设计要合理。
  3. 分析并创建表的主键。
  4. 建立表之间的关系。