实验:使用SSMS创建并管理数据库及其基本表

2023-11-06

目录

题目要求

1、创建数据库

2、创建三个表

3、修改限制条件

4、创建及管理约束条件

5、录入基本数据

6.数据的更改和插入

7、分离与附加数据库


题目要求

实验课程

数据库系统原理

专业

计算机科学与技术

班级

实验日期

姓名

学号

同组实验者

指导教师

实验名称

实验2 使用SSMS创建并管理数据库及其基本表

实验成绩

实验环境

实验要求

  1. 掌握使用SSMS创建数据表;
  2. 学会修改基本表结构;
  3. 掌握创建、删除和修改约束的方法;
  4. 掌握用SSMS方式输入基本表数据;

实验内容

  1. 创建学生_课程(SC)数据库;

数据库属性表

数据库名

文件名

物理文件位置

初始大小

文件组

SC
(学生_课程)

SC_Data

D:\SQL2+学号\SC_Data.MDF

4MB

PRIMARY

SC_Log

D:\SQL2000LX2\SC_Log.LDF

2MB

  1. 学生_课程数据库中的学生表(Stus)、课程表(Courses)、选课表(Score)并保存关闭设计窗口;

学生_课程库基本表结构和约束

基本表名

属性名

列说明

数据类型

长度

列级约束

表级约束

学生

Sno

学号

CHAR

5

不能空,惟一值

学号为主码

Sname

姓名

CHAR

8

不能空

Sage

年龄

SMALLINT

默认20

Ssex

性别

CHAR

2

‘男’或‘女’

Sdept

所在系

CHAR

20

课程

Cno

课程号

CHAR

5

不能空,惟一值

课程号为主码

Cname

课程名

CHAR

20

不能空

Cprec

先行课

CHAR

5

选课

Sno

学号

CHAR

5

不能空

学号和课程号为主码;学号为外码;课程号为外码

Cno

课程号

CHAR

5

不能空

Score

成绩

SMALLINT

0~100

  1. 修改基本表结构,即增加和删除列;
  1. 学生表中增加成绩列:sgrade  int 能空;
  2. 课程表中增加开课学期列:Csem tinyint 不能
  3. 课程表中增加学时列:Chours tinyint 不能
  4. 学生表中删除年级列;

保存修改;

  1. 创建及管理表约束;
  1. 为学生表增加约束:年龄要大于18岁的约束;
  2. 为课程表增加约束:开课学期只能为1至6;
  3. 删除学生表中年龄的约束;
  1. 用界面方式插入基本表数据;

学生表的实验数据

序号

学号

姓名

年龄

性别

所在系

1

08001

张三

22

计算机

2

09001

王佳

21

计算机

3

08003

宋建伟

21

计算机

4

08004

孙宏雷

22

计算机

5

08002

潘叶

20

计算机

6

09002

赵海梅

21

计算机

7

09003

周涛

22

数学

8

98010

张文

22

数学

9

08005

张东强

20

数学

10

08006

马惠敏

21

物理

课程表的实验数据

学生选课表的实验数据

序号

课程号

课程名

先行课

开课学期

学时

1

C1

计算机引论

1

48

2

C2

数据结构

C3

3

60

3

C3

C语言编程

C1

2

72

4

C4

软件工程

C6

5

64

5

C6

数据库

C2

4

64

6

C5

计算机文化

1

54

7

C7

高等数学

2

30

8

C8

概率统计

C9

5

50

9

C9

线性代数

C7

2

30

10

C10

力学

4

64

序号

学号

课程

成绩

1

08001

C1

60

2

08001

C1

93

3

08001

C1

 

4

08002

C1

89

5

08002

C2

79

6

08003

C2

 

7

08003

C2

80

8

08004

C3

90

9

08006

C3

92

10

08006

C3

81

11

09001

C7

85

12

09001

C7

75

保存表并关闭;

  1. 基本表数据插入、更新和删除;
  1. 在学生表中插入: (‘09403’,’王丽丽’,0,,21’,’女’,’计算机应用’)  
  2. 课程表中计算机文化课程的学时改成36
  3. 在学生表中删除学号为09403的学生;

保存并关闭窗口;

  1. 分离与附加数据库;
  1. 学生_课程数据库从服务器分离;
  2. 学生课程数据库的文件复制到别处;
  3. 在服务器附加学生_课程数据库;

8、用户界面方式删除学生_课程数据库;

实验记录

1、创建数据库

2、创建三个表

 

 

 

3、修改限制条件

 

 

 

 

4、创建及管理约束条件

 

 

 

 

5、录入基本数据

 

 

 

6.数据的更改和插入

 

 

7、分离与附加数据库

 

 

 

 

实验总结

*实验中遇到的问题和总结;

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

实验:使用SSMS创建并管理数据库及其基本表 的相关文章

  • 2023全网最全requests库和requests模块使用详解(建议收藏)

    一 requests简介 简介 使用requests可以模拟浏览器的请求 比起之前用的urllib requests模块的api更加便捷 本质就是封装了urllib3 注意 requests库发送请求将网页内容下载下来以后 并不会执行js代
  • C++ 简单乘积

    C 语法基础题目第2题 简单乘积 题目 简单乘积 题目来源 acwing 605题 读取两个整数值 在此之后 计算它们的乘积并将结果存储在名为PROD的变量中 输出结果如下例所示 输入格式 共两行 每行包含一个整数 输出格式 输出格式为 P

随机推荐

  • 11-3 读写一个字符

    1 读一个字符 读一个字符的函数有三种 分别为 getchar getc 以及 fgetc 其中 getc 和 fgetc 实现方式不一样 但功能相同 getc 利用宏实现 fgetc 利用函数实现 此外 注意上述函数返回值均为整数 且 s
  • 深度学习--TensorFlow(5)BP神经网络(混淆矩阵、准确率、精确率、召回率、F值)

    目录 一 混淆矩阵 二 准确率 三 召回率 四 精确率 五 综合评估指标 F值 一 混淆矩阵 也程 误差矩阵 是表示 精度评价的一种标准格式 用n行n列的矩阵形式来表示 在机器学习领域 混淆矩阵又称为可能性表格或者是错误矩阵 它是一种特定的
  • laravel查看sql语句

    方法一 我们有时候想测试一段代码生产的 SQL 语句 比如 我们想看 App User all 产生的 SQL 语句 我们简单在 routes php 做个实验即可 app Http routes php Route get test sq
  • Caused by: java.lang.NoClassDefFoundError: org/apache/curator/shaded/com/google/common/collect/Maps

    出现上述错误 我发现的原因是 springboot版本和Curator版本不对应 springboot是1 5 Curator版本为4 0 我是这么解决的 Curator版本改为2 7 0
  • Python文件直接操作文件描述符open的大坑

    17 fr1 open file1 readlines 18 fr2 open file2 readlines 如果是fr2 open file2 那么for 嵌套循环会报错 19 sh dict 20 cnt mil 0 21 cnt e
  • Lombok中@Slf4j 注解报错

    1 检查项目中是否引入lombok的依赖
  • springboot运行时内存溢出_SpringBoot 使用 Caffeine 本地缓存

    点击上方 SpringForAll社区 轻松关注 及时获取有趣有料的技术文章 本文来源 http www mydlq club article 56 一 本地缓存介绍 二 缓存组件 Caffeine 介绍 1 Caffeine 性能 2 C
  • 双色球笔记3--输出所有中奖号码

    双色球笔记3 输出所有中奖号码 1 功能 本文主要根据中奖类别输出所有中奖号码 双色球奖项分为6种 如下所示 一等奖 6 1 中奖概率为 红球33选6乘以蓝球16选1 1 17721088 0 0000056 二等奖 6 0 中奖概率为 红
  • ❤ElementUI Table表格

    ElementUI Table表格操作 一 实战部分一 1 表格基础属性 1 表格赋值数据 data
  • 通过 jd-gui 查看 jeeSite 的framework

    最近有一个单体应用开发 综合比对下选择了jeeSite 前端虽有瑕疵 后台功能确实做的不错 一切准备就绪 环境搭建好了 准备开发 需要修改角色信息 发现代码当中竟然没有 后来查看了下maven仓库下的jeesite framework 4
  • Qt信号与槽传递自定义数据类型

    Qt信号与槽之间传递typedef定义的数据类型或其他类型 在编译时不报错 但在执行时会报如下错误 QObject connect Cannot queue arguments of type elemType Make sure elem
  • R语言报错记录The following objects are masked from ‘package:stats’:decompose, spectrum

    报错记录 大家好 这里是想做生信大恐龙 的生信小白 这是一条简短的报错记录 参考了其他博主的方法 如有侵权 请联系删除 报错记录 报错记录 报错原因 解决方法 总结 报错原因 使用R语言第三方包 igraph 时出现了以下报错 The fo
  • 【Qt教程】3.5 - Qt5 QPainter绘图抗锯齿、相对坐标/平移坐标系、QPainter画图片、手动调用QPainter绘图事件

    GitHub源码仓库 Qt学习例程 1 QPainter绘图抗锯齿 抗锯齿测试 painter drawEllipse QPoint 100 50 50 50 设置 抗锯齿能力 抗锯齿会让绘图效率较低 painter setRenderHi
  • CVPR 2021

    双图层实例分割 物体的互相遮挡在日常生活中普遍存在 严重的遮挡易带来易混淆的遮挡边界及非连续自然的物体形状 从而导致当前已有的检测及分割等的算法性能大幅下降 本文通过将图像建模为两个重叠图层 为网络引入物体间的遮挡与被遮挡关系 从而提出了一
  • pip install PIL 报错

    使用 pip install PIL 时报如下错误 Collecting PIL Could not find a version that satisfies the requirement PIL from versions No ma
  • kubernetes常用命令汇总

    1 查询命名空间 kubectl get ns 2 查询服务名 kubectl get po 3 查询对应命名空间下的服务名 kubectl n namespace get po 4 根据命名空间下某个服务的查询日志 kubectl n n
  • Git1 基础

    1 什么是git 1 1 简介 GIT是一种分布式版本控制系统 通俗点说版本控制就是当文档写错了 能够让你回退到之前某个正确的版本 给你一着悔棋 1 2 版本控制系统 1 2 1 本地版本控制系统 许多人习惯用复制整个项目目录的方式来保存不
  • 服务器虚拟化优缺点

    将服务器物理资源抽象成逻辑资源 让一台服务器变成几台甚至上百台相互隔离的虚拟服务器 我们不再受限于物理上的界限 而是让CPU 内存 磁盘 I O等硬件变成可以动态管理的 资源池 从而提高资源的利用率 简化系统管理 实现服务器整合 让IT对业
  • java语言特点和跨平台原理

    Java语言 1 java的三大版本 JavaSE J2SE java的标准版本定位在客户端 主要用于桌面应用软件的编程 JavaEE 定位在服务器端java2的企业版 主要用于分布式网络程序的开发 如电子商务网站 JavaME J2ME主
  • 实验:使用SSMS创建并管理数据库及其基本表

    目录 题目要求 1 创建数据库 2 创建三个表 3 修改限制条件 4 创建及管理约束条件 5 录入基本数据 6 数据的更改和插入 7 分离与附加数据库 题目要求 实验课程 数据库系统原理 专业 计算机科学与技术 班级 实验日期 姓名 学号