首页 > 数据库 >实验二:数据库表的建立和操作

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

时间:2023-12-23 13:31:51浏览次数:40  
标签:return 数据库 borrow 主键 book 实验 user 操作 id

实验二:数据库表的建立和操作_字段


第二个实验
根据上述要求,可以设计以下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. 建立表之间的关系。





标签:return,数据库,borrow,主键,book,实验,user,操作,id
From: https://blog.51cto.com/chenfenglove/8945053

相关文章

  • Vim 操作-替换
    Vim操作-替换substitute:[range]s[ubstitute]/{pattern}/{string}/{flag}替换的操作范围以行为基础;%-全局范围,m,n-使用逗号隔开的m到n范围,.表示当前操作行;特殊字符需要用转义符号\,如\s\/;1.Range设定:%s/.../g,对当前文本的每一行操作:m,ns/.../g,对m......
  • Go操作数据库与Gorm
    Go连接MySQL首先我们来看如何使用Golang连接MySQL安装所需要的驱动gogetgithub.com/go-sql-driver/mysql导入所需要使用的包import("database/sql""fmt"_"github.com/go-sql-driver/mysql")连接MySQL需要使用的语句funcmain(){//"用户名:密码@......
  • linux 操作系统基础
    1、ls-列出目录内容。ls-l:以详细列表形式显示文件和目录的权限、所有者、大小等信息。ls-a:显示所有文件和目录,包括隐藏文件(以点开头的文件)。2、cd-切换目录。cd/home:切换到/home目录。cd..:返回上一级目录。cd~:返回当前用户的主目录。3、pwd-显示当前目录的路径。4、mkdi......
  • 看门狗实验
    看门狗:起一个监督的作用的模块。原理:建值寄存器中写入0xCCCC.降值计数器开启,从0xfff降到零就溢出,产生复位信号,若我们在建值寄存器中写入0xAAAA(喂狗),计数器重新计数。分类:独立看门狗,时钟独立      窗口看门狗,在窗口中喂狗独立看门狗:Tout=((4×2^prer)×rlr)/32;4×2......
  • openGauss学习笔记-169 openGauss 数据库运维-备份与恢复-导入数据-更新表中数据-使用
    openGauss学习笔记-169openGauss数据库运维-备份与恢复-导入数据-更新表中数据-使用DML命令更新表openGauss支持标准的数据库操作语言(DML)命令,对表进行更新。169.1操作步骤假设存在表customer_t,表结构如下:CREATETABLEcustomer_t(c_customer_skinteger,......
  • Spring JdbcTemplate操作数据库
    SpringJdbcTemplate操作数据库源码代码测试pom.xml<?xmlversion="1.0"encoding="UTF-8"?><projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi......
  • 为什么cmd中输入数据库备份命令后还让继续输入
    为什么cmd中输入数据库备份命令后还让继续输入出现上述条件是需要进入mysql的bin目录下执行,在mysql中不可实现。我的mysql目录是在这这样就好了,在mysql登录状态下是不能够操作备份的。......
  • 成为阿里云云大使,推广阿里云数据库PolarDB产品,赢取猫超卡及返佣礼金!
    ......
  • 金蝶数据库服务器注册
    一、本地安装路径  K3Cloud\ManageSite\App_Data\DataBase\PatternDbFile 找到 SqlServerBCPatternDB.bak和  SqlServerMCPatternDB.bak 两个文件移动到数据库服务器目录下。二、使用ssms工具还原数据库 三、打开 K3Cloud\ManageSite\App_Data找到 Common.confi......
  • 将excel数据导入到SQL server数据库的详细过程
    原文链接:https://www.xjx100.cn/news/415146.html?action=onClick1.将要导入的excel表格数据如下,第一行数据默认为数据库表中的字段,所以这个必须要有,否则无法映射导入。如下图(只截部分数据) 2.打开MicrosoftSQLServerManagementStudio17数据库管理软件,选中要导入的mydb数......