SQLServer数据库期末复习试题试卷及答案.doc

上传人:wj 文档编号:1036907 上传时间:2023-04-30 格式:DOC 页数:4 大小:36.50KB
下载 相关 举报
SQLServer数据库期末复习试题试卷及答案.doc_第1页
第1页 / 共4页
SQLServer数据库期末复习试题试卷及答案.doc_第2页
第2页 / 共4页
SQLServer数据库期末复习试题试卷及答案.doc_第3页
第3页 / 共4页
SQLServer数据库期末复习试题试卷及答案.doc_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

SQLServer数据库期末复习试题试卷及答案.doc

《SQLServer数据库期末复习试题试卷及答案.doc》由会员分享,可在线阅读,更多相关《SQLServer数据库期末复习试题试卷及答案.doc(4页珍藏版)》请在冰点文库上搜索。

SQLServer数据库期末复习试题试卷及答案.doc

现有关系数据库如下:

数据库名:

教学数据库(Teacher)

教师信息表(教师编号,姓名,性别,民族,职称,身份证号)

课程信息表(课程号,课程名,标准课时数)

任课信息表(教师编号,课程号,实际课时数)

一、用SQL语言实现下列功能

1.创建数据库。

要求:

数据库名为Teacher,主数据文件名为Teacher_data.MDF,存放在C:

\目录下,初始值大小为2MB,增长方式为按照10%的比例增长;日志文件名为Teacher_log.LDF,存放在C:

\目录下,初始值大小为1MB,增长方式为按照1MB的增量增长。

2.创建教师信息表Teacherinfo,数据表的各字段属性如下表所示:

列名 数据类型 长度 属性 描述

Teacher_Id char 6 主键 教师编号

Teacher_Namenvarchar 8 不允许空 姓名

Sex nchar 2 检查(男/女) 性别

Birth_Place nvarchar 20 默认值(汉族) 民族

Zhicheng nvarchar 20 不允许空职称

H_Idchar16唯一身份证号

3.创建课程信息表Courseinfo,数据表的各字段属性如下表所示:

列名 数据类型 长度 属性 描述

Course_Id char 5 主键 课程号

Course_Namenvarchar 20 不允许空 课程名

B_Hours Int 检查(0~200)  标准课时数

4.创建任课信息表TCinfo,数据表的各字段属性如下表所示:

列名 数据类型 长度 属性 描述

Id int 自动编号

Teacher_Id char 6 外键 教师编号

Course_Idchar 5 外键  课程号

S_HoursInt 实际课时数

5.将下列课程信息添加到课程表中:

课号课程名称课时数

30001SQLServer数据库90

30002数据结构60

30003VB程序设计72

修改课号为30003的课程名称:

VisualBasic程序设计。

删除课号为30003的课程信息。

6.在课程信息表中统计标准课时数的最大值、最小值和平均值,并使用别名。

7.检索有一门或一门以上课程实际课时数大于90的所有教师的信息,包括编号、姓名。

8.创建一个包含教师编号,教师姓名,课程号,课程名称,实际课时数的教师任课表视图V_TCinfo。

9.从教师任课表视图中检索出所有代'SQLServer数据库技术'课程的老师姓名及其课时数。

10.在课程信息表中统计标准课时数的最大值、最小值和平均值,并使用别名。

11.检索有一门或一门以上课程实际课时数大于90的所有教师的信息,包括编号、姓名。

12.建一个规则zhicheng_rule,并将其绑定到教师表的职称列上,规定职称取值为('教授','副教授','讲师','助教')之一。

13.创建带参数的存储过程S_Hours,实现能计算某教师代课总课时,并将值返回,执行此存储过程:

计算“郭老师”的总课时。

14.在教师信息表(Teacherinfo)上创建DELETE触发器Trigger_1,实现当删除教师信息表中的某个教师的记录时,对应任课信息表(TCinfo)中的所有有关此教师的记录都删除。

二、在企业管理器中实现以下操作

1.将Teacher数据库中的“Courseinfo”表导出到Excel表中,字段名和数据类型保持一致。

2.使用企业管理器为Teacher数据库设置一个SQLServer身份验证的用户账户:

登录名:

admin,密码:

666,数据库用户名:

developer,权限:

可查询本数据库中所有表、视图、内嵌表值函数的数据,并可执行所有的存储过程。

3.在企业管理器中创建一个逻辑名为“Backup_Teacher”的备份设备,放在C:

\ProgramFiles\MicrosoftSQLServer\MSSQL\BACKUP\目录下。

然后进行Teacher的完整数据库备份,为该备份取名为“教学完整备份”,备份设备为“Backup_Teacher”。

一、用SQL语言实现下列功能的sql语句代码

no

参考答案

1.

createdatabaseTeacher

ON

(NAME=’teacher_Data’,

FILENAME=’C:

\teacher_data.MDF’,

SIZE=2,FILEGROWTH=10%),

LOGON

(NAME=’teacher_Log’,

FILENAME=’C:

\teacher_log.LDF’,

SIZE=1,FILEGROWTH=1)

COLLATEChinese_PRC_CI_AS

GO

2.

useTeacher

go

createtableTeacherinfo

(Teacher_Idchar(6)primarykey,

Teacher_Namenvarchar(8)notnull,

Sexnchar

(2)check(Sexin('男','女')),

Birth_Placenvarchar(20)default'汉族'notnull,

Zhichengnvarchar(20)notnull,

H_Idchar(18)unique

3.

createtableCourseinfo

(Course_Idchar(5)primarykey,

Course_Namenvarchar(40)notnull,

B_HoursIntcheck(B_Hoursbetween0and200)

4

createtableTCinfo

(IDIDENTITY(1,1),

Teacher_Idchar(6)referencesTeacherinfo(Teacher_Id),

Course_Idchar(6)referencesCourseinfo(Course_Id),

S_HoursInt

5.

insertCourseinfovalues('10001','SQLServer数据库',90)

insertCourseinfovalues('10002','数据结构',60)

insertCourseinfovalues('10003','VB程序设计',72)

updateCourseinfo

setCourse_Name='VisualBasic程序设计'

whereCourse_Id='10003'

deleteCourseinfowhereCourse_Id='10003'

6.

selectmax(B_Hours)as最大值,min(B_Hours)as最小值,avg(B_Hours)as平均值

fromCourseinfo

7

selectTeacher_Id,Teacher_Name

fromTeacherinfo

whereTeacher_Idin(selectdistinctTeacher_Id

fromTCinfowhereS_Hours>=90)

8.

createviewV_TCinfo

as

selectTeacher_Id,Teacher_Name,Course_Id,Course_Name,S_Hours

fromTeacherinfo,TCinfo,Courseinfo

whereTeacherinfo.Teacher_Id=TCinfo.Teacher_Id

andTCinfo.Course_Id=Courseinfo.Course_Id

9.

selectTeacher_Nameas教师姓名,S_Hours

fromV_TCinfo

whereCourse_Name='SQLServer数据库技术'

10.

useTeacher

go

createrulezhicheng_rule

as@Zhichengin('教授','副教授','讲师','助教')

go

sp_bindrulezhicheng_rule,'Teacherinfo.Zhicheng'

11.

createprocedureS_Hours

@TeacherNamenvarchar(8)

@SHoursIntOutput

as

select@SHours=sum(S_Hours)

fromV_TCinfo

whereTeacher_Name=@TeacherName

go

executeS_Hours'郭老师'

12.

CREATETRIGGERSum_HoursONdbo.Tcinfo

AFTERINSERT,UPDATE

AS

SELECTTeacher_Id,SUM(S_Hours)As总课时数

FROMTCinfo

WHERETeacher_Id=(SELECTTeacher_IdFROMInserted)

GROUPBYTeacher_Id

go

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2