首页 > 数据库 >数据库实验 SQL server sduwh caohai

数据库实验 SQL server sduwh caohai

时间:2024-09-03 19:54:08浏览次数:7  
标签:数据库 外键 约束 完整性 SQL Coursenum 主键 server caohai

问题一:根据E-R图写出关系模式,标注主键和外键 

学生关系模式:Student(StudentNum,StudentName,StudentSex,StudentAge,StudentPhone,StudentBrith,Speciality)

其中主键为学号StudentNum,没有外键。

课程关系模式:Course(Coursenum ,CourseName,Credit ,Classhour ,ClassType)

其中主键为学号Coursenum,没有外键。

学习关系模式:Study(StudentNum,Coursenum,Grade,Credit)

其中外键为Coursenum和StudentNum。

教师关系模式:Teacher(Teachernum,TeacherName,TeacherSex,TeacherAge,TeacherPhone)

其中主键为学号Teachernum,没有外键。

教授关系模式:Teach(Teachernum,Coursenum)

其中外键为Teachernum和Coursenum。

 

问题二:在SSMS中新建查询,使用Create Table编写代码创建对应的基本表,注意表名、列名、数据类型和各类约束。


62ec3ebc9ddd470d9b0f4a739386364b.png

ea1b3b5e5a014ce39d2d64c571a5d6db.jpg

 02b9457c035a4dd890f25cd283f26236.jpg

56690b7feef34835a1fd19f21698baeb.jpg 

 

问题三:在SSMS中新建并查看数据库关系图。

在“对象资源管理器”中(点击选择”数据库”(点击选择”StudentManage”(选择右击“数据库关系图”,选择点击“新建数据库关系图”,将所得的五个表全部一一进行添加。

 

f46417a0b25747cf8f3bedf2ac0f1463.jpg

c34de2a1d343464b83d433cace64f407.jpg 

ec518c24798c43fb9c7b18ca71d64522.jpg 

 

问题四、使用Alter Table编写代码修改Student表,添加手机号一列,并设置为非空、唯一。

 

42100302eb5b4a14b528ac801d16f8ad.jpg

问题五:使用Alter Table编写代码修改Student表,尝试删除性别、出生日期列
 

f72e55856cd14acea7551175d607e62d.jpg

 

8f0efc6b565a4fadb32c40466062bdf8.jpg

 0a6095511a5b47598d85031f278d509a.jpg

问题六:为基本表添加测试数据,每个表至少10行
af5d1f46f17146e7b42eda55cd34f17e.jpg

 6d6ba4552aea496a96a61b9b732c3829.jpg

 

2500791fa95347209cbdbf66fa704a6f.png

 ab7ed664e56a481aa757f35b6b1ee698.jpg

cbb6619be95243b5b70cb0f2393918f2.jpg

问题七:使用Drop Table编写代码尝试删除课程表
01e3a47a6f714eba8fa966b3dbe95f26.jpg

问题八:实验总结。

(1)关系模式
首先依据上一次实验的学生选课需求分析得到的E-R图,建立出关系模式,标注出主键、外键之后,方便后面表的操作(创建以及增删改查)。
(2)利用关系模式对表进行操作或者控制查询
根据建立的关系模式,再利用SSMS,用SQL语句实现表的创建、修改、删除。经过检查确认无误后,再对表进行编辑。
表的创建
使用CREATE TABLE创建表。基本格式为:
CREATE TABLE 表名(
    属性列名1 数据类型 [列1的完整性约束]
    [,属性列名2 数据类型 [列2的完整性约束]
    …
    属性列名n 数据类型 [列n的完整性约束]
    [,表级完整性约束]
    [,完整性约束命名子句]);

对表的建立内容需要包括表名、表的属性、数据类型、完整性约束。完整性约束包括实体完整性(主键设置)、参照完整性(外键设置)、用户自定义完整性(NULL约束、DEFAULT默认值约束、UNIQUE唯一约束、CHECK检查约束)。

表的修改
使用ALTER TABLE语句修改表。其中包括:增加属性(即某一列)、增加完整性约束(主键、外键、NULL、DEFAULT、UNIQUE、CHECK)、删除属性即、删除完整性约束、修改属性。
表的删除
使用DROP TABLE表名 语句进行删除表。
在建立完表后,可以在SSMS创建的数据库中查看数据库关系图(鼠标右击数据库中的数据库关系图)。

(3)对表内数据进行操作
    表创建完且检查无误后,鼠标点击刷新数据库,然后即可对表添加数据。可以鼠标右击需要添加数据的表使用编辑前两百行添加数据。

 

 

 

 

 

标签:数据库,外键,约束,完整性,SQL,Coursenum,主键,server,caohai
From: https://blog.csdn.net/ym1568/article/details/141869142

相关文章

  • 【Eureka】搭建Eureka Server,实现服务注册和服务发现
    1.Eureka介绍Eureka是NetflixOSS套件中关于服务注册和发现的解决⽅案.SpringCloud对Eureka进⾏了集成,并作为优先推荐⽅案进⾏宣传,虽然⽬前Eureka2.0已经停⽌维护,新的微服务架构设计中,也不再建议使用,但是⽬前依然有⼤量公司的微服务系统使⽤Eureka作为注册中⼼.官方文档......
  • 52 mysql 启动过程中常见的相关报错信息
    前言我们这里主要是看一下service mysqlstart,servicemysqlstop的过程中的一些常见的错误问题这些 也是之前经常碰到, 但是 每次都是去搜索, 尝试 1,2,3,4去解决问题但是 从来未曾思考过这个问题到底是怎么造成的  TheserverquitwithoutupdatingPIDfil......
  • 基于Java+SpringBoot+Vue+MySQL的地方美食分享网站
    作者:计算机学姐开发技术:SpringBoot、SSM、Vue、MySQL、JSP、ElementUI等,“文末源码”。专栏推荐:前后端分离项目源码、SpringBoot项目源码、SSM项目源码系统展示基于SpringBoot+Vue的地方美食分享网站【附源码文档】、前后端分离开发语言:Java数据库:MySQL技术:SpringBo......
  • PostgreSQL 软肋 “最大连接数” 到底是不是问题?
    PostgreSQL为什么接受大量连接到数据库需要连接池  (这是一篇2020年8月4日我写的文章,分析为什么,根本上也没有如某些disspostgresql连接数不能太高问题非常严重的人所说的影响严重,实际上针对PostgreSQL连接的问题,还真有一个可以说一下的,但鲜有人提到)正文———————————......
  • mysql模糊查询通过排序调整精准值
    背景:通过模糊查询到的结果,精准值排在后面解决:通过调整字段排序select*fromuserwhere1=1<iftest="keyword!=nullandkeyword!=''">andnamelikeconcat('%',#{keyword},'%')</if><iftest="sort==1and(keyword......
  • MySQL like用法详解
    MySQLLIKE语法LIKE运算符用于WHERE表达式中,以搜索匹配字段中的指定内容,语法如下:WHEREcolumnLIKEpatternWHEREcolumnNOTLIKEpattern在LIKE全面加上NOT运算符时,表示与LIKE相反的意思,即选择column不包含pattern的数据记录LIKE通常与通配符%一起使用,%表示通配pattern中出现的......
  • Windows下安装MySQL详细教程
    Windows下安装MySQL详细教程1、安装包下载  2、安装教程(1)配置环境变量(2)生成data文件(3)安装MySQL(4)启动服务(5)登录MySQL(6)查询用户密码(7)设置修改用户密码(8)退出 3、解决问题1、安装包下载。下载地......
  • MySQL修改密码
    第一种方式:最简单的方法就是借助第三方工具NavicatforMySQL来修改,方法如下:1、登录mysql到指定库,如:登录到test库。2、然后点击上方“用户”按钮。3、选择要更改的用户名,然后点击上方的“编辑用户”按钮。4、出现如图界面,输入新密码,并确认新密码,点击“保存”按钮即可。   第二种......
  • MySQL索引底层实现原理
    索引的本质MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构。提取句子主干,就可以得到索引的本质:索引是数据结构。我们知道,数据库查询是数据库的最主要功能之一。我们都希望查询数据的速度能尽可能的快,因此数据库系统的设计者会从查询算法的角度进行优化。最基......
  • MySQL之mysqldump的使用详解
    一、mysqldump简介mysqldump 是 MySQL 自带的逻辑备份工具。它的备份原理是通过协议连接到 MySQL 数据库,将需要备份的数据查询出来,将查询出的数据转换成对应的insert 语句,当我们需要还原这些数据时,只要执行这些 insert 语句,即可将对应的数据还原。二、备份命令2.1命令格......