数据库实验报告一

这篇具有很好参考价值的文章主要介绍了数据库实验报告一。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

第1关:创建数据库

实验要求:创建名为 TESTDB 的数据库。

相关SQL语句如下:文章来源地址https://www.toymoban.com/news/detail-418353.html

CREATE DATABASE TESTDB;

第2关:创建简单的数据表

实验要求:TESTDB 数据库中创建教师表(teacher),表结构如下:

字段名 数据类型(长度) 备注
tno CHAR(4) 工号
tname VARCHAR(12) 姓名
sex CHAR(3) 性别
title VARCHAR(15) 职称
birthday DATE 出生日期

相关SQL语句如下:

CREATE TABLE teacher(
  tno CHAR(4),
  tname VARCHAR(12),
  sex CHAR(3),
  title VARCHAR(15),
  birthday DATE
);

第3关:创建带约束的数据表

实验要求:TESTDB 数据库中创建课程表(course)和班级表(class),表结构如下:

course 表结构:

字段名 数据类型(长度) 完整性约束说明 备注
cno CHAR(4) 主键 课程号
cname VARCHAR(30) 非空 课程名
credit TINYINT 约束取值范围为1~10 学分
hours INTEGER …… 学时
examination CHAR(6) …… 考核方式

class表结构

字段名 数据类型(长度) 完整性约束说明 备注
gno CHAR(7) 主键 班级号
gname VARCHAR(21) 唯一键 班级名
grade CHAR(5) …… 年级
dept VARCHAR(12) …… 学院
gnum TINYINT 约束取值范围为15~40 班级人数

相关SQL语句如下:

CREATE TABLE course(
  cno CHAR(4)  PRIMARY KEY,
  cname VARCHAR(30)  NOT NULL,
  credit TINYINT  CHECK(credit>=1 AND credit<=10),
  hours INTEGER,
  examination CHAR(6)
);

CREATE TABLE class(
  gno CHAR(7) PRIMARY KEY,
  gname VARCHAR(21) UNIQUE,
  grade CHAR(5),
  dept VARCHAR(12),
  gnum TINYINT  CHECK(gnum>=15 AND gnum<=40)
);

第4关:给教师表添加约束

实验要求:

TESTDB 数据库中给教师表(teacher)添加主键约束,工号(tno)作为主键,给教师表姓名(tname)列添加唯一约束。

相关SQL语句如下:

ALTER TABLE teacher ADD PRIMARY KEY(tno);

ALTER TABLE teacher ADD UNIQUE(tname);

第5关:在TESTDB中创建教师授课表

实验要求:

TESTDB 数据库中创建教师授课表 teaching,及其对应的约束条件,表结构如下:

字段名 数据类型(长度) 完整性约束说明 备注
cno CHAR(4) 外键,主键(cno+tno+gno) 课程号
tno CHAR(4) 外键,主键(cno+tno+gno) 工号
gno CHAR(7) 外键,主键(cno+tno+gno) 班级号
term TINYINT …… 开课学期
classroom CHAR(7) …… 教室

相关SQL语句如下:

create table teaching(
cno char(4),
tno char(4),
gno char(7) ,
term tinyint,
classroom char(7),
PRIMARY KEY(cno,tno,gno),
foreign key(cno) references course(cno),
foreign key(tno) references teacher(tno),
foreign key(gno) references class(gno)
);

第6关:修改字段约束

实验要求:

TESTDB 数据库中修改教师表(teacher)姓名列(tname)的空/非空约束,改为非空,修改教师表性别列(sex)的默认值约束,默认值改为“男”。

相关SQL语句如下:

alter table teacher 
alter 
column tname set not null;

alter table teacher 
alter 
column sex set default '男';

第7关:删除约束

实验要求:

TESTDB 数据库中删除教师表(teacher)姓名列的唯一约束(约束名:TEACHER_TNAME_KEY)。

相关SQL语句如下:

alter table teacher drop constraint teacher_tname_key;

第8关:添加字段

实验要求:

TESTDB 数据库的教师表(teacher)中添加教师的电子邮箱(email,VARCHAR(6))和办公地点(address,VARCHAR(20))两列。

相关SQL语句如下:

alter table teacher add email VARCHAR(6);

alter table teacher add address VARCHAR(20);

第9关:修改字段

实验要求:

TESTDB 数据库中将教师表(teacher)中办公地点(address)的列名改为 office,电子邮箱(email)的数据类型改为VARCHAR(20)

相关SQL语句如下:

alter table teacher rename column address to office;

alter table teacher alter column email type VARCHAR(20);

第10关:删除字段

实验要求:

TESTDB 数据库中删除教师表(teacher)中的办公地点(office)和电子邮箱(email)两个列。

相关SQL语句如下:

alter table teacher drop column office;

alter table teacher drop column email;

第11关:添加单条记录

实验要求:

TESTDB 数据库中给班级表(class)添加一条记录,班级号为 '0051807',班级名为'电气18级7班',年级为 '18 级',学院为'电气',班级人数为 '38'

相关SQL语句如下:

INSERT INTO class VALUES ('0051807','电气18级7班','18级','电气','38');

第12关:添加部分数据

实验要求:

TESTDB 数据库中给教师表(teacher)中,添加一条教师记录,其中教师工号为'0250',姓名为'任远',性别为'男'

相关SQL语句如下:

INSERT INTO teacher(tno,tname,sex) VALUES ('0250','任远','男');

第13关:添加多条记录

实验要求:

TESTDB 数据库中分别给教师表(teacher),班级表(class),课程表(course),教师授课表(teaching)中添加多条记录。

teacher 表所需数据如下:

工号 姓名 性别 职称 出生日期
0014 李欣 教授 1969-07-25
0078 张云 副教授 1975-11-25
0118 王立 高级工程师 1985-04-28
0193 赵玲 讲师 1992-09-26
0213 杨梅 副教授 1986-06-07
0030 覃刚 副教授 1980-02-15

course 表所需数据如下:

课程号 课程名 学分 学时 考核方式
G001 线性代数 3 48 考试
R003 数据结构 3 48 考试
R009 离散数学 3 48 考试
S023 嵌入式系统与编程实验 1 32 考察
G012 大学物理 4 64 考试

class 表所需数据如下:

班级号 班级名 年级 学院 班级人数
0211801 软件18级1班 18级 软件 37
0211903 软件19级3班 19级 软件 35
0211705 软件17级5班 17级 软件 38
0131901 机械19级1班 19级 机械 37

teaching 表所需数据如下:

课程号 工号 班级号 开学日期 教室
G001 0078 0211903 1 A101
G001 0078 0131901 1 A101
R003 0118 0211801 2 S001
R009 0213 0211903 2 S002
S023 0193 0211801 1 S001
G012 0030 0131901 2 B003

相关SQL语句如下:

INSERT INTO teacher VALUES
('0014','李欣','男','教授','1969-07-25'),
('0078','张云','女','副教授','1975-11-25'),
('0118','王立','男','高级工程师','1985-04-28'),        
('0193','赵玲','女','讲师','1992-09-26'), 
('0213','杨梅','女','副教授','1986-06-07'),
('0030','覃刚','男','副教授','1980-02-15');

INSERT INTO course VALUES
('G001','线性代数','3','48','考试'),
('R003','数据结构','3','48','考试'),
('R009','离散数学','3','48','考试'),        
('S023','嵌入式系统与编程实验','1','32','考察'), 
('G012','大学物理','4','64','考试');

INSERT INTO class VALUES
('0211801','软件18级1班','18级','软件','37'),
('0211903','软件19级3班','19级','软件','35'),
('0211705','软件17级5班','17级','软件','38'),
('0131901','机械19级1班','19级','机械','37');

INSERT INTO teaching VALUES
('G001','0078', '0211903','1','A101'),
('G001','0078', '0131901','1','A101'),
('R003','0118', '0211801','2','S001'),
('R009','0213', '0211903','2','S002'),
('S023','0193', '0211801','1','S001'),
('G012','0030', '0131901','2','B003');

第14关:修改数据

实验要求:

1.大学物理课程的考核方式发生了改变,从原先“考试”改为“考察”,请修改课程表(course)中对应的数据。

2.新学年开始,有 3 名同学转专业进入 软件19级3班,更新班级表(class)中班级人数。

相关SQL语句如下:

UPDATE course 
SET examination = '考察' 
WHERE cname = '大学物理';

UPDATE class 
SET gnum = '38'
WHERE gname = '软件19级3班';

第15关:删除数据

实验要求:

新学年开始,17级班级已毕业,从班级表(class)中删除17级班级的信息。

相关SQL语句如下:

DELETE FROM class where grade = '17级';

到了这里,关于数据库实验报告一的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 创建数据库Market、Team,按要求完成指定操作

    创建数据库Market,在Market中创建数据表customers,customers表结构如表4.6所示,按要求进行操作。  代码如下: 在Market中创建数据表orders,orders表结构如表4.7所示,按要求进行操作。 代码如下: 在关联customers_info 表中的主键c_num时,orders表中的c_id和customers_info表中的c_num 的类型

    2024年02月13日
    浏览(34)
  • 1.数据库的管理(实验报告)

    目录 一﹑实验目的 二﹑实验平台 三﹑实验内容和步骤 四﹑命令(代码)清单 五﹑命令(代码)运行结果 了解SQL Server数据库的逻辑结构和物理结构的特点; 掌握使用SQL Server管理平台对数据库进行管理的方法; 掌握使用Transact-SQL语句对数据库进行管理的方法。 操作系统:Window

    2024年02月02日
    浏览(29)
  • 《数据库系统概论》实验7报告

    实验题目:通过ODBC方式访问数据库 实验环境:Windows 10、MySQL、SQL Server 实验步骤 一、MySQL数据源配置 1、安装MySQL的ODBC驱动安装包 https://dev.mysql.com/downloads/connector/odbc/,选择32位的8.0.21的msi版本,进行安装 2、添加驱动程序 打开 控制面板 —— 系统和安全 —— 管理工具 ——

    2024年02月07日
    浏览(46)
  • MySQL数据库 实验报告(一)

    实验报告(一) 1、实验目的 (1)掌握系统数据类型的特点和功能 (2)掌握创建、修改表结构的方法 (3)掌握数据添加的方法 2、实验预习与准备 (1)MYSQL中创建数据库的命令 (2)表结构的创建、修改和删除 (3)MYSQL导入导出表数据的方式 (4)添加数据的SQL命令 3、实

    2024年02月05日
    浏览(40)
  • 数据库实验报告【太原理工大学】

    温馨提示:仅供参考! 1.数据定义 创建、修改、删除基本表 创建索引 创建视图 2.数据操作 插入数据 修改数据 删除数据 3.数据查询操作 单表查询 分组统计 连接查询 嵌套查询 集合查询 视图操作 1.使用 SSMS 的图形界面创建用户并授权 使用 SSMS 的图形界面创建登录名 使用

    2023年04月27日
    浏览(56)
  • 数据库原理及应用实验报告-实验10-触发器

     实验题目   实验 10触发器    10.1 实验目的 通过实验使学生加深对数据完整性的理解,学会理解、创建和使用触发器。 10.2 实验内容   (用实验9的Teacher表) (1) 为 Teacher 表建立触发器T1,当插入或使更新表中的数据时,保证所操作的纪录的 Tage 值大于0。 (2) 为 Teacher 表建立

    2024年02月05日
    浏览(36)
  • MySQL数据库设计作业 ——《网上书店系统》数据库设计实验报告

    普通用户:可以进行最基础的登陆操作,可浏览图书、按类别查询图书、查看 图书的详细信息,还可以注册成为会员。 会员:需要填写详细信息(真实姓名、性别、手机号、地址、邮箱等),可浏览图书、按类别查询图书、查看图书的详细信息,在此基础上,还可以订购图

    2024年02月04日
    浏览(59)
  • 数据库原理及应用实验报告-实验4-SQL的视图

    实验目的 熟悉SQL支持的有关视图的操作,能够熟练使用SQL语句来创建需要的视图,对视图进行查询和删除视图。 实验内容 定义常见的视图形式,包括: 行列子集视图 WITH CHECK OPTION的视图 基于多个基表的视图 基于视图的视图 带表达式的视图 分组视图 通过实验考察WITH CHEC

    2023年04月26日
    浏览(34)
  • Mysql数据库实验报告--实验五 存储过程和触发器

    在这个系列会更新一些最近老师要求写的实验报告~ 大家尽量对着我的文章做一个参考,不要盲目的cv,毕竟这个对于我们以后的工作学习还是十分重要的。 从这个实验开始,就不在cmd命令行里面进行mysql数据库的操作,因为代码长度和代码的复杂性,需使用 MySQL Workbench: 双

    2024年02月09日
    浏览(39)
  • 数据库实验 实验一 数据库创建与管理

    注:此内容仅仅只是记录成长与分享学习,不能保证绝对正确 实验一 数据库的创建与管理 实验日期:   2022   年 3 月   25 日  星期   五     实验地点:   宿舍      一 实验目的 1. 熟练掌握创建、删除数据库。 2. 查看和修改数据库属性。 二 实验要求 1. 请大家务必动

    2024年02月01日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包