数据库复试—关系数据库标准语言SQL

数据库复试—关系数据库标准语言SQL

SQL:结构化查询语言 以教材中的学生-课程数据库为例进行SQL基础语法的复习 数据库实验环境选择SQLServer 11

关系模式

学生表Student(Sno,Sname,Ssex,Sage,Sdept)

课程表Course(Cno,Cname,Cpno,Ccredit)

学生选课表SC(Sno,Cno,Grade)

数据建立

学生表数据

学号Sno姓名 Sname性别 Ssex年龄 Sage所在系 Sdept
201215121李勇20CS
201215122刘晨19CS
201215123王敏18MA
201215125李勇20IS

课程表数据(其中先行课既是主键又是外键)

课程号Cno课程名Cname先行课Cpno学分Ccredit
1数据库54
2数学2
3信息系统14
4操作系统63
5数据结构74
6数据处理2
7PASCAL语言64

选课表SC中间表(联系表)

学号Sno课程号Cno成绩Grade
201215121192
201215121285
201215121388
201215121290
201215121380

实验说明

在建表的过程中使用数据库管理员进行登录,在SQL定义与查询实验中忽略用户授权与相应的视图机制

在实验贱建表的过程中对常用的数据类型的说明进行省略
数据类型参考说明

实验工具Sqlserver自带工具
在这里插入图片描述

数据定义语言DDL—基本表建立

前期加主键约束与列级完整性约束条件

CREATE TABLE Student(Sno CHAR(9) PRIMARY KEY,  /*主键约束*/Sname CHAR(20) UNIQUE,     /*唯一值*/Ssex CHAR(2),Sage SMALLINT,Sdept CHAR(20)
);

外键引用自身

-- 选课表CREATE TABLE Course(Cno CHAR(4) PRIMARY KEY,Cname CHAR(40) NOT NULL,Cpno CHAR(4),Ccredit SMALLINT,FOREIGN KEY(Cpno) REFERENCES Course(Cno)
);

中间表的部分主键由两个外键联合组成,外键分别引用另外两个表的主键

CREATE TABLE SC(Sno CHAR(9),Cno CHAR(4),Grade SMALLINT,PRIMARY KEY(Sno,Cno),FOREIGN KEY(Sno) REFERENCES Student(Sno),FOREIGN KEY(Cno) REFERENCES Course(Cno),
);

完成数据库系统表的建立

数据操作语言DML-表结构的修改

语法关键字

  • ALTER TABLE
  • DROP TABLE
  • ADD TABLE

列名:COLUMN(column)

实验举例

  1. 向学生表中添加入学时间列数据类型为日期型

ALTER TABLE Student ADD S_entrance DATE;

在这里插入图片描述


ALTER TABLE Student DROP COLUMN S_entrance;

删除表中一列时携带关键字

  1. 删除学生表实验(级联删除和非级联删除)

带有外键约束的无法直接进行删除
在这里插入图片描述

级联删除语法存在问题
在这里插入图片描述

查询后发现是因为SQL2012不支持使用"cascade"和"destrict”

先删除对应的关系在删除学生表

实验拓展

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/640387.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Java】学习一门开发语言,从TA的Hello World开始

欢迎来到《小5讲堂》 大家好,我是全栈小5。 这是《Java》序列文章,每篇文章将以博主理解的角度展开讲解, 特别是针对知识点的概念进行叙说,大部分文章将会对这些概念进行实际例子验证,以此达到加深对知识点的理解和掌握…

【Android12】Android Framework系列---Adb和PMS安装apk源码流程

Adb和PMS安装apk源码流程 adb install命令 通过adb install命令可以将apk安装到Android系统(注意:特定类型的apk,比如persist类型是无法通过adb安装的) 下述命令中adb解析install命令,并调用Android PackageManagerS…

eNSP学习——部分VLAN间互通、部分VLAN间隔离、VLAN内用户隔离(MUX-VLAN)

MUX VLAN(Multiplex VLAN)提供了一种通过VLAN进行网络资源控制 的机制。通过MUX VLAN提供的二层流量隔离的机制可以实现企业内部员 工之间互相通信,而企业外来访客之间的互访是隔离的。 特点: 一、主VLAN端口可以和所有VLAN通信 二…

java基础08-Java中的null和空字符串的区别是什么?

Java中的null和空字符串的区别是什么? null表示一个变量没有引用任何对象,而空字符串表示一个字符串变量引用了一个长度为0的字符串。 null:表示一个变量没有引用任何对象。也就是说,这个变量还没有被分配内存。如: …

基本控件(一)

目录 控件的定义:使用控件的好处: setupUiwidget.hwidget.cppmain.cpp 控件的定义: QT控件是在QT框架下实现的一组用户界面元素,包括按钮、标签、输入框、列表框、滚动条、菜单等等,它们用于快速构建各种应用程序的图…

【Linux】gcc与g++的认识

gcc与g是linux下的编译器, 我们都知道写好了源文件gcc一下就可以得到.exe文件 那么其中会经过几个过程呢?也就是源文件翻译过程, 预处理(预编译)编译汇编链接 本篇文章的侧重点是围绕链接进行理解C语言标准库 目录 …

Java项目:ssm框架基于spring+springmvc+mybatis框架的民宿预订管理系统设计与实现(ssm+B/S架构+源码+数据库+毕业论文)

一、项目简介 本项目是一套ssm827基于SSM框架的民宿预订管理系统设计与实现,主要针对计算机相关专业的正在做毕设的学生与需要项目实战练习的Java学习者。 包含:项目源码、数据库脚本等,该项目附带全部源码可作为毕设使用。 项目都经过严格调…

POI及EasyExcel学习笔记

POI及EasyExcel学习笔记 组件、工具 POI-Excel概述 Apache POI 结构: HSSF - 提供读写[Microsoft Excel](https://baike.baidu.com/item/Microsoft Excel)格式档案的功能。XSSF - 提供读写Microsoft Excel OOXML格式档案的功能。HWPF &am…

Scrum敏捷开发企业级实训

课程简介 Scrum是目前运用最为广泛的敏捷开发方法,是一个轻量级的项目管理和产品研发管理框架。 这是一个两天的实训课程,面向研发管理者、项目经理、产品经理、研发团队等,旨在帮助学员全面系统地学习Scrum和敏捷开发, 帮助企业快速启动敏…

93. 复原 IP 地址 - 力扣(LeetCode)

题目描述 有效 IP 地址 正好由四个整数(每个整数位于 0 到 255 之间组成,且不能含有前导 0),整数之间用 ‘.’ 分隔。 例如:“0.1.2.201” 和 “192.168.1.1” 是 有效 IP 地址,但是 “0.011.255.245”、“…

HNOI2014 米特运输

P3237 [HNOI2014] 米特运输 题目大意 有一棵有 n n n个节点的树,每个点有一个权值,要求修改一些点的权值,使得: 同一个父亲节点的所有儿子节点的权值相同父亲节点的权值必须是所有儿子结点的权值之和 求需要修改的最小次数。 …

matlab appdesigner系列-常用16-状态按钮

状态按钮,有两个状态,按下状态,返回值为1或true;未按下状态,返回值为0或false 示例:设置一状态按钮,用文本记录其状态 操作步骤: 1)将状态按钮、文本区域拖拽到画布上…

LeetCode 热题 100 | 哈希

目录 1 基础知识 1.1 定义哈希表 1.2 遍历哈希表 1.3 查找某一个键 1.4 插入键值对 1.5 获取键值对的值 1.6 搜索功能 2 三道题 2.1 1. 两数之和 2.2 49. 字母异位词分组 2.3 128. 最长连续序列 菜鸟做题第一周,语言是 C 1 基础知识 1.1 定…

【数模百科】美赛中论文手的备赛技巧

我们需要明白一件事情: 论文手最重要的人物是把分析过程和分析结果用文字展现出来,需要的是你的逻辑思维和语言组织能力。并不考研你的数理能力以及代码功底。 所以,论文手的任务是展现建模的思路。 和你有没有接触过matlab没有关系 因为…

对网站进行打点(不要有主动扫描行为)

什么是打点? 简单来说就是获取一个演习方服务器的控制权限。 目的: 1. 上传一个一句话木马 2. 挖到命令执行 3. 挖到反序列化漏洞 4. 钓鱼 假设对“千峰”网站进行打点: 1. 利用平台 1. 利用各类平台: 天眼查-商业查询平…

Unity SnapScrollRect 滚动 匹配 列表 整页

展示效果 原理: 当停止滑动时 判断Contet的horizontalNormalizedPosition 与子Item的缓存值 相减,并得到最小值,然后将Content horizontalNormalizedPosition滚动过去 使用方式: 直接将脚本挂到ScrollRect上 注意:在创建Content子物体时…

面试 Vue 框架八股文十问十答第七期

面试 Vue 框架八股文十问十答第七期 作者:程序员小白条,个人博客 相信看了本文后,对你的面试是有一定帮助的!关注专栏后就能收到持续更新! ⭐点赞⭐收藏⭐不迷路!⭐ 1)Vue template 到 render…

Mysql运维篇(二) 主从复制

一路走来,所有遇到的人,帮助过我的、伤害过我的都是朋友,没有一个是敌人,如有侵权请留言,我及时删除。 一、主从复制的原理 主库会生成一个I/O操作线程进去写的的操作,而从库则生成两个线程,其一是I/O读取线程,其二是一个SQL线程。 1、主库将数据的操作记录到一个二进…

C++的流库

1.流的概念 “流”,即“流动”的意思,是物质从一处向另一处流动的过程。在计算机这边通常是指对一种有序连续且具有方向性的数据的抽象描述。 C 中的流一般指两个过程的统一: 信息从外部输入设备(键盘)向计算机内部…

【数据结构与算法】之字符串系列-20240121

这里写目录标题 一、344. 反转字符串二、125. 验证回文串三、205. 同构字符串四、242. 有效的字母异位词五、290. 单词规律 一、344. 反转字符串 简单 编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 s 的形式给出。 不要给另外的数组分配额…