1. 创建students数据库,在该数据库下创建表stu,并同时创建约束,表结构及约束要求如表1所示。
CREATE TABLE stu
(
学号 CHAR(4) NOT NULL PRIMARY KEY,
姓名 CHAR(8) NULL,
性别 CHAR(2) NULL,
出生日期 DATE NULL
);
  1. 创建表sc,并同时创建约束,表结构及约束要求如表2所示。
设置(学号,课号)为主键。
CREATE TABLE sc
(
学号 CHAR(4) NOT NULL,
课号 CHAR(4) NOT NULL,
成绩 DECIMAL(5,2) NULL CHECK(0<=成绩<=100),
CONSTRAINT fk_sno FOREIGN KEY(学号) REFERENCES stu(学号)
);
  1. 创建表course,并同时创建约束,表结构及约束要求如表3所示。
CREATE TABLE course
(
课号 CHAR(4) NOT NULL,
课名 CHAR(20) NULL,
学分 INT NULL,
CONSTRAINT up_cname UNIQUE(课名)
);
  1. 在course表的课号列建立主键约束。
ALTER TABLE course ADD PRIMARY KEY(课号);
  1. 在sc表的课号列建立外键约束fk_cno,参照course表的课号列的取值,要求实现级联更新。
ALTER TABLE sc ADD CONSTRAINT fk_cno
FOREIGN KEY(课号) REFERENCES course(课号) ON UPDATE CASCADE;
  1. 在stu表的姓名列建立唯一约束名uq_sname。
ALTER TABLE stu ADD CONSTRAINT up_sname UNIQUE(姓名);
  1. 在course表的学分列建立检查约束ck_xf,检查条件为学分>0。
ALTER TABLE course ADD CONSTRAINT ck_xf CHECK(学分>0);
  1. 删除sc表的外键约束fk_cno,fk_sno。
ALTER TABLE sc DROP CONSISTENT fk_cno;
ALTER TABLE sc DROP CONSISTENT fk_sno;
  1. 删除stu表的主键约束。
ALTER TABLE stu DROP PRIMARY KEY;

10.删除course表的唯一约束uq_cname。

ALTER TABLE course DROP INDEX up_cname;

11.创建测试表test,包含一个字段date_time,字段类型varchar(50);
创建触发器test_trig,实现在stu表中每插入一条学生记录后,则自动在test表中追加一条插入成功时的日期时间。SYSDATE()函数用来获取当前的日期和时间。
为stu表插入一条记录引发触发器,查看test表的内容。

CREATE TABLE test(
date_time VARCHAR(50)
);
CREATE TRIGGER test_trig AFTER INSERT on stu
FOR EACH ROW INSERT test VALUES(SYSDATE());
INSERT INTO stu VALUES('1000','张三','男','2001-07-21');
SELECT *FROM test;

12.在course表上创建触发器del_trig,当course表上删除一门课程时,级联删除sc表该课程的记录。删除course表的一条记录,查看sc表相应记录是否被自动删除。

CREATE TRIGGER del_trig AFTER DELETE ON  course
FOR EACH ROW
DELETE FROM sc WHERE sc.`课号`=OLD.课号;
DELETE FROM course WHERE 课号='2';
SELECT *FROM sc;

数据库第四次实验报告相关推荐

  1. mysql实验四数据库查询和视图_数据库-第四次实验报告-视图-t-sql语句

    实验十报告 创建视图 实验目的 1.掌握创建视图的SQL语句的用法. 2.掌握使用企业管管理器创建视图的方法. 3.掌握使用创建视图向导创建视图的方法. 4.掌握查看视图的系统存储过程的用法. 5.掌 ...

  2. 20145240 《Java程序设计》第四次实验报告

    20145240 <Java程序设计>第四次实验报告 北京电子科技学院(BESTI)实验报告 课程:Java程序设计 班级:1452 指导教师:娄嘉鹏 实验日期:2016.04.26 实验 ...

  3. 数据库原理及应用实验报告-实验10-触发器

    数据库原理及应用实验报告 实验题目  实验10触发器 10.1 实验目的 通过实验使学生加深对数据完整性的理解,学会理解.创建和使用触发器. 10.2 实验内容  (用实验9的Teacher表) (1 ...

  4. c程序语言第四版实验报告,C语言程序设计第四次实验报告

    C语言程序设计第四次实验报告 姓名:熊毅 实验地点:家 实验时间:2020.04.09 实验项目: 5.3.1练习2 求数列的前n项和 5.3.2练习2 求水仙花数 5.3.4 十进制转换 5.3.5 ...

  5. 数据库应用开发技术实验报告

    "数据库应用开发技术"实验报告 2020-2021学年 第二学期 实验名称: 学生姓名: 学 号: 专业班级: 所在学院: 指导教师: 职 称: 完成日期: 实验1 sql ser ...

  6. 数据库原理及应用实验报告-实验8-参照完整性

    数据库原理及应用实验报告 实验题目  实验8参照完整性 实验目的 学习建立外键,以及利用FOREIGN KEY-REFERENCES子句以及各种约束保证参照完整性. 实验内容 为演示参照完整性,建立表 ...

  7. 计算机第四次实验报告表,东南大学计算机网络第四次实验报告

    <东南大学计算机网络第四次实验报告>由会员分享,可在线阅读,更多相关<东南大学计算机网络第四次实验报告(9页珍藏版)>请在人人文库网上搜索. 1.东南大学自动化学院实验报告课程 ...

  8. mysql实验报告四_实验报告四

    实 实 验 报 告 课程名称 数据库实验及课程设计 实验项目 数据查询 实验 仪器 ___________________________ 系 别______信息管理学院______ 专 业_____ ...

  9. 计算机系统概论实验报告3,东南大学计算机网络第四次实验报告.docx

    文档介绍: 东南大学自动化学院实验报告课程名称:信息通信网络概论第4次实验(系):自动化专业:自动化实验名称:实验四.计算机网络通信应用程序设计名:学号:验室:金智楼实验组别:同组人员:实验时间:20 ...

最新文章

  1. 如何设置html中按钮边框颜色,CSS-为什么我的电子邮件按钮边框显示两种颜色,而边框颜色设置为仅显示一种颜色?...
  2. create 2021 | 一图读懂汽车智能化分论坛
  3. NTLDR is missing解决方法
  4. systemd管理mysql多实例_使用 systemd 配置多个 MySQL 8.0 实例
  5. 数据挖掘常用的方法(分类,回归、聚类、关联规则)
  6. vue中使用Vue-pdf在线预览
  7. linux加密框架 crypto 算法管理 - 动态和静态算法管理
  8. Python——相对路径的学习笔记
  9. mysql执行计划id相同_MySQL|MySQL执行计划
  10. glide 4.0 之后 和圆角裁剪CenterCrop冲突
  11. idc机房运维巡检_技本功|数据安全之IDC数据容灾设计实现
  12. 首次使用计算机 鼠标没反应,电脑鼠标没反应是怎么回事
  13. 2 年前端面试心路历程总结(字节跳动、YY、虎牙、BIGO)
  14. 预测、迭代与优化:用AI探寻组合优化问题最优解
  15. LK 打印log控制
  16. DirectX11 Direct3D基本概念
  17. 强化学习(十八) 基于模拟的搜索与蒙特卡罗树搜索(MCTS)
  18. java第三次试验报告
  19. 小微企业怎么实现数字化转型
  20. 博德之门 linux x32,GOG.com

热门文章

  1. 近期Domino相关产品要闻速览
  2. 实现图片转换成字符画
  3. Scratch等级考试编程题操作指南
  4. Echarts桑基图的排列顺序
  5. Leetcode-数据结构-1.两数之和
  6. python绘图基础
  7. idea和eclipse哪个更好用?为什么呢?
  8. 商户号与商户appid不匹配
  9. 瞬时频率函数matlab,Hilbert 变换与瞬时频率
  10. 5.42如何高效的学习开源项目