现有关系数据库如下:
数据库名:教学数据库(Teacher)
教师信息表(教师编号,姓名,性别,民族,职称,身份证号 课程信息表(课程号,课程名,标准课时数 任课信息表(教师编号,课程号,实际课时数
)
) )
一、用SQL语言实现下列功能
1. 创建数据库。
要求:数据库名为 Teacher,主数据文件名为 Teacher_data.MDF,存放在 目录下,初
始值大小为2MB增长方式为按照 10%的比例增长;日志文件名为
Teacher_log.LDF,存放在
目录下,初始值大小为 1MB增长方式为按照1MB的增量增长。
2. 创建教师信息表Teacherinfo,数据表的各字段属性如下表所示:
列名 数据类型 长度 属性 描述 Teacher_Id char 6 主键 教师编号 Teacher_Name n varchar 8 不允许空 姓名 Sex n char 2 检查(男/女) 性别 Birth_Place n varchar 20 默认值(汉族) 民族 Zhiche ng n varchar 20 不允许空 职称 H Id
char
16
唯一
身份证号
3.创建课程信息表 Course info,数据表的各字段属性如下表所示:
列名 数据类型 长度 属性 描述
Course_ld char 5
主键 号】田千口
i=r. 课程Course_Name n varchar 20
不允许空 课程名 B Hours
Int
检查(0~200)
标准课时数
4.创建任课信息表 TCinfo,数据表的各字段属性如下表所示:
列名 数据类型
长度
属性 描述
Id
int 自动编号
Teacher_Id char 6 外键 教师编号
Course_Id char 5
外键
】田千口 i=r. 课程号 S Hours
Int
实际课时数
5. 将下列课程信息添加到课程表中:
课号 课程名称
课时数
30001
SQL Server
数据库 90
30002 数据结构 60 30003
VB
程序设计
72
修改课号为30003的课程名称:Visual Basic
程序设计。
删除课号为30003的课程信息。
6. 在课程信息表中统计标准课时数的最大值、最小值和平均值,并使用别名。 7. 检索有一门或一门以上课程实际课时数大于 V_TCinfo。
9. 从教师任课表视图中检索出所有代 ’SQL Server数据库技术’课程的老师姓名及其课时 数。
10. 在课程信息表中统计标准课时数的最大值、最小值和平均值,并使用别名。 11. 检索有一门或一门以上课程实际课时数大于 授','副教授','讲师','助教’)之一。
13. 创建带参数的存储过程 S_Hours,实现能计算某教师代课总课时,并将值返回,执行 此存储过程:计算“郭老师”的总课时。
14. 在教师信息表(Teacherinfo )上创建DELETE触发器Trigger_1,实现当删除教师信 息表中的某个教师的记录时, 对应任课信息表(TCinfo)中的所有有关此教师的记录都删 除。
90的所有教师的信息,包括编号、姓名。
'教
12. 建一个规则zhicheng_rule ,并将其绑定到教师表的职称列上,规定职称取值为(
90的所有教师的信息,包括编号、姓名。
8. 创建一个包含教师编号,教师姓名,课程号, 课程名称,实际课时数的教师任课表视图
二、在企业管理器中实现以下操作
1. 将Teacher数据库中的“ Course info ”表导出到Excel表中,字段名和数据类型保持一 致。 2. 使用企业管理器为 Teacher数据库设置一个 SQLServer身份验证的用户账户: 函数的数据,并可执行所有的存储过程。
3. 在企业管理器中创建一个逻辑名为“ Backup_Teacher ”的备份设备,放在 C:\\Program Files\\Microsoft SQL
份,为该备份取名为“教学完整备份”
目录下。然后进行 Teacher的完整数据库备
,备份设备为“ Backup_Teacher ”。
登录名:
admin,密码:666,数据库用户名:developer,权限:可查询本数据库中所有表、视图、 内嵌表值
、用SQL语言实现下列功能的sql语句代码
no 1. create database Teacher ON (NAME=‘ teacher_Data ', 'Cteacher_data.MDF ', SIZE=2,), LOG ON (NAME=‘ teacher_Log ', 'Gteacher_log.LDF', SIZE=1,) COLLATE Ch in ese_PRC_CI_AS GO 2. 参考答案 use Teacher go create table Teacheri nfo (Teacher_ld char(6) primary key, Teacher_Name n varchar(8) not n ull. Sex nchar(2) check(Sex in ('男','女')), Birth_Place nvarchar(20) default '汉族'not null, Zhiche ng n varchar(20) not n ull, H」d char(18) uni que ) 3. create table Course info (Course_ld char(5) primary key, Course_Name n varchar(40) not n ull, B_Hours Int check(B_Hours between 0 and 200) ) 4 create table TCi nfo (ID IDENTITY。,1), Teacher_ld char(6) references Teacheri nfo (Teacher_Id), Course_Id char(6) referen ces Course in fo(Course_Id), S_Hours Int ) 5. insert Courseinfo values('10001','SQL Server 数据库',90) insert Courseinfo values('10002','数据结构',60) insert Courseinfo values('10003','VB 程序设计',72) update Course info set Course_Name ='Visual Basic 程序设计' where Course_Id ='10003' 6. delete Courseinfo where Course Id ='10003' select max(B_Hours) as 最大值,min(B_Hours) as 最小 值,avg(B_Hours) as 平均值 from Course info 7 select Teacher_Id,Teacher_Name from Teacheri nfo where Teacher_Id in (select disti net Teacher_Id from TCinfo where S Hours >=90) create view V_TCi nfo as select Teacher Id,Teacher Name,Course Id,Course Name,S Hours 8.
SQLServer数据库期末复习试题试卷及答案
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)