实验一创建数据库及表的创建与管理

更新时间:2023-11-13 16:57:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

实验1创建数据库及表的创建与管理

一、实验目的与要求

1、掌握使用T-SQL语句创建数据库、数据表和`数据表完整性约束的定义。 2、熟悉表的结构和列所使用的数据类型。 3、理解数据表完整性含义及其定义的方法。 二、实验平台

1、操作系统:Windows XP或Windows 2003 2、数据库管理系统:SQL Server 2005 三、实验内容

(一)数据库创建与管理

创建一个“教务管理系统”数据库,并将下列表创建在该数据库中

(二)在“教务管理系统”数据库钟实现表的创建与完整性定义 StudentInfo(学生信息表) 列名 数据类型 Sno Sname Ssex Sbirthday Sage Saddress char(8) char(8) char(6) datetime Smallint varchar(40) Sphoto Smemory image varchar(100) TeacherInfo(教师信息表)

列名 Tno Tname 数据类型 char(8) char(8) 描述 教师编号 姓名 是否为空 完整性约束 不空 不空 主键 照片 备注 允许空 允许空 学号 姓名 性别 出生日期 年龄 家庭住址 不空 不空 不空 不空 不空 允许空 主键 唯一值约束S1 默认值‘男’ 描述 是否为空 完整性约束 Tsex Tbirthday Tage Trank char(6) datetime Smallint char(6) 性别 出生日期 年龄 职称 不空 默认值为“男” 不空 不空 不空 外键,Trank引用RankPayment表中的Trank Taddress varchar(40) 家庭住址 允许空 Tphoto Tmemory image varchar(100) 照片 备注 允许空 允许空 CourseInfo(课程信息表)

列名 Cno Cname Credit CourseHour 数据类型 char(8) char(20) tinyint tinyint 描述 课程号 课程名 学分 课时 是否为空 完整性约束 不空 主键Cno 不空 唯一性约束 不空 不空 StudentCourse(学生选课表) 列名 Sno 数据类型 char(8) 描述 学号 是否为空 完整性约束 不空 Sno引用StudentInfo表中的Sno Cno char(8) 课程号 不空 Cno引用CourseInfo中的Cno。 Score real 成绩 允许空 CHECK约束:Score必须在0至100之间。 Teaching(教学表)

列名 Tno 数据类型 char(8) 描述 教师编号 是否为空 完整性约束 不空 外键,Tno引用TeacherInfo表中的Tno Cno char(8) 课程号 不空 外键,Cno引用CourseInfo表中的Cno。 Ssatisfact char(6) 学生满意允许空 度 RankPayment(职称课酬表)

列名 Trank Payment 数据类型 char(6) real 描述 职称 每课时酬金 1、使用T-SQL语句创建以上数据表。同时定义主键约束:StudentInfo表主键Sno;TeacherInfo表主键Tno;CourseInfo表主键Cno; RankPayment表主键Trank。

2、使用T-SQL语句定义以上数据表的其他约束

①对StudentInfo表的Sname进行唯一性约束(unique约束),约束名称为S1。

②对CourseInfo表的Cname进行唯一性约束(unique约束)。

③对StudentCourse表定义外键约束:Sno引用StudentInfo表中的Sno,Cno引用CourseInfo表中的Cno。

④对TeacherInfo表定义外键约束:Trank引用RankPayment表中的Trank。 ⑤对Teaching表定义外键约束:Tno引用TeacherInfo表中的Tno,Cno引用CourseInfo表中的Cno。

⑥对StudentCourse表的Score进行CHECK约束:Score必须在0至100之间。

是否为空 完整性约束 不空 不空 主键 ⑦对StudentInfo表中的Ssex和TeacherInfo表中的Tsex进行默认值定义,默认值为“男”

注:表中完整性约束查看命令:exec sp_help 表名 (三)修改基本表

①向基本表StudentInfo中增加“入学时间”属性列,其属性名为Sentrancedate,数据类型为DATETIME型。 ②将Sage(年龄)的数据类型改为INT型。 ③删除Sname(姓名)必须取唯一值的约束。 ④增加Sname(姓名)必须取唯一值的约束 (四)删除基本表

删除RankPaymetn表

四、实验过程 五、实验总结

简述实验完成情况、实验过程中各自碰到的问题、各自对实验目的掌握情况。

本文来源:https://www.bwwdw.com/article/o8ev.html

Top