实验一 SQL Server基本操作与数据定义语言(DDL)
实验目的:
1.掌握数据库服务器的启动、登录
2.掌握Microsoft SQL Server Management Studio的使用
3.掌握SQL SERVER的数据定义子语言
实验要求:
1.启动、登录SQL SERVER数据库服务器
2.使用SQL创建、修改和撤销数据库、基本表
实验环境及学时安排:
1.SQL SERVER2008
2.学时:2学时
实验内容:
1.启动SQL SERVER数据库服务器, 尝试分别使用Windows/SQL Server身份认证;
2.使用Management Studio创建基本表、视图、索引
3.使用SQL创建基本表、视图、索引
假设条件:
学校有若干个系,每个系由若干名教师和学生;每个教师可以担任若干门课程;每个学生可以同时选修多门课程。请设计某学校的教学管理的E-R模型,要求给出每个实体、联系的属性。
根据以上语义,我们可得到如下E-R图(属性未画出):
将以上E-R图中的部分实体和联系转换为关系,得到下表:
数据字典
表名 | 中文名 |
---|---|
Department | 院系 |
Course | 课程 |
SC | 选课 |
Student | 学生 |
Teacher | 教师 |
Teaching | 任课 |
院系 Department
字段名 | 数据类型 | 可空性 | 主键 | 外键 | 中文名 |
---|---|---|---|---|---|
DepID | int | NOT | NULL | Yes | No |
DName | nvarchar(20) | NOT NULL | No | No | 院系名称 |
Location | nvarchar(50) | NULL | No | No | 办公地点 |
Leader | char(8) | NULL | No | No | 系主任编号 |
课程Course
字段名 | 数据类型 | 可空性 | 主键 | 外键 | 中文名 |
---|---|---|---|---|---|
CNo | char(10) | NOT NULL | Yes | No | 课程编号 |
CName | varchar(50) | NOT NULL | No | No | 课程名称 |
Grade | samllint | NULL | No | No | 学分 |
Term | smallint | NULL | No | No | 开课学期 |
TNo | char(8) | NOT NULL | No | Yes | 授课教师编号 |
DepID | int | NULL | No | Yes | 开课院系编号 |
Grade取值范围是[1,1.5,2,2.5,3,3.5,4,4.5,5]
Term取值范围是[1,2,3,4,5,6,7,8]
TNo为外键,参照教师表中的TNo
DepID为外键,参照院系表中的DepID
选课 SC
字段名 | 数据类型 | 可空性 | 主键 | 外键 | 中文名 |
---|---|---|---|---|---|
SNo | char(10) | NOT | NULL | Yes | Yes |
CNo | char(10) | NOT NULL | Yes | Yes | 课程编号 |
SDate | smalldatetime | NULL | No | No | 选课日期 |
Score | decimal(4,1) | NULL | No | No | 考试成绩 |
SNo参照Student表中的SNo
CNo参照Course表中的CNo
Score取值范围[0-100],带一位小数,如80.5
学生 Student
字段名 | 数据类型 | 可空性 | 主键 | 外键 | 中文名 |
---|---|---|---|---|---|
SNo | char(10) | NOT NULL | Yes | No | 学号 |
SName | nchar(8) | NOT NULL | No | No | 姓名 |
Sex | nchar(1) | N |