实验5:数据库设计

这个实验我做的比较简单,但是实际比这个复杂得多。

1.实验目的

掌握数据库设计基本方法及数据库设计工具。

2.实验内容和要求

掌握数据库设计基本步骤,包括数据库概念结构设计、逻辑结构设计,物理结构设计,数据库模式SQL语句生成。能够使用数据库设计工具进行数据库设计。

3.实验重点和难点

实验重点:概念结构设计、逻辑结构设计。
实验难点:逻辑结构设计。逻辑结构设计虽然可以按照一定的规则从概念结构转换而来,但是由于概念结构通常比较抽象,较少考虑更多细节,因此转换而成的逻辑结构还需要进一步调整和优化。逻辑结构承接概念结构和物理结构,处于核心地位,因而是数据库设计的重点,也是难点。

4.实验步骤

问题描述
某学院有基本实体集:系、教师、学生和课程。各个实体的属性集为:
系:系编号,系名,地址
课程:课程号,课程名称,开课学期
学生:学号,学生姓名,性别,住址
教师:教工号,教师姓名,办公室
实体间的联系有:每个系有一位系主任,有多位教师;一个教师只能在一个系任职;每个系开设多门不同课程;一门课程只能由一个系负责开设;每门课程只能由一个教师授课,一个教师可以讲授多门课程;一个学生可以选修多门课程;一门课程也可以由多个学生选修。

(1) 对以上描述进行分析,进行数据库概念模型的设计(即确定各个实体、属性及联系并绘制E-R图)
在这里插入图片描述
(2) 将(1)中概念模型转换成关系型逻辑模型,并标出各个关系模式的主码和外码
:(系编号,系名,地址,系主任)
课程:(课程号,课程名称,开课学期,系编号,教工号)
学生:(学号,学生姓名,性别,住址,系编号)
教师:(教工号,教师姓名,办公室,系编号)
选修:(课程号,学号
(3) 将所转换成的关系型数据模型在SQL Server中进行实现

create table Sdept(
SdeSno char(9) primary key,
SdeSname char(20) unique,
SdeAddr char(40),
SdeMan char(20));
create table teacher(
Tno char(9) primary key,
Tname char(20) unique,
Toffice char(40),
SdeSno char(9),
foreign key(Sdesno) references  Sdept(SdeSno));
create table Course(
Cno char(9) primary key,
Cname char(20) unique,
CnSem char(20),
SdeSno char(9),
Tno char(9),
foreign key(Sdesno) references  Sdept(SdeSno),
foreign key(Tno) references Teacher(Tno));
create table Student(
Sno char(9) primary key,
Sname char(20) unique,
Ssex char(2),
Saddr char(40),
SdeSno char(9),
foreign key(SdeSno) references  Sdept(SdeSno));
create table choice(
Cno char(9),
Sno char(9),
foreign key(Cno) references  course(Cno),
foreign key(Sno) references student(Sno));

创建成功,如下图所示:
在这里插入图片描述

发布了11 篇原创文章 · 获赞 2 · 访问量 135

猜你喜欢

转载自blog.csdn.net/sinat_40875078/article/details/104099080