上海高等学校计算机等级考试试卷
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
上海市高等学校计算机等级考试试卷
三级《信息系统与数据库技术》考试样题
(本试卷答卷时间150分钟)
I 基本理论知识题目
一、单选题(本大题30道小题,每小题1分,共30分)。从下面题目给出的A、B、C、D 四个可供选择的答案中选择一个正确答案。
二、多选题(本大题包括5道小题,每小题1分,共5分):从下面题目给出的A、B、C、D四个可供选择的答案中选择所有正确答案。
三、填空题(本大题包括2道小题,共25分):
1. 选择填空题(本小题共5个空格,每空1分,共5分):从以下答案集合中选择一个正确的答案的编号,填入相应空格。答案集合如下:
2. SQL语句填空题(本小题共10个小题,每个2分,共20分)。在“C:\样张”文件夹下存放着数据库filmmanager数据库(包括Access数据库和SQL Server数据库),数据库模式如下,具体数据库结构定义请访问样本数据库获得。
请完成在filmmanager数据库中可实现以下相应功能的SQL语句。
(1)找出所有的客户信息
select *
from customer
(2)找出由W1主演的电影的名称
select diskname
from diski
where actor='w1'
(3)找出客户H1所租的所有碟片的信息
select *
from diski,rent,customer
where rent.diskid=diski.diskid and
rent.customerid=customer.customerid and
customer.customername='h1'
(4)找出没有被租的碟片的信息
select *
from diski
where diskid not in (select diskid from rent)
(5)找出名字W开头的演员主演的影片的名称
select diskname
from diski
where actor like 'w%'
(6)找出在08年前租出的碟片的名称
select diskname
from diski
where diskid in (select diskid
from rent
where year(rentdate)<'2008')
(7)找出租碟数量超过2个的客户名称
select customername
from customer
where customerid in (
select customerid
from rent
group by customerid having count(customerid)>1)
(8)把客户1的租碟日期推后一天
update rent
set rentdate=rentdate+1
where customerid='001'
(9)将(3,’f3’,’w3’)插入film表中
insert diski
values (3,'f3','w3')
(10)将客户h1的租借信息删除
delete
from rent
where customerid in (
select customerid
from customer
where customername='h1')
II 综合应用实践题目
四、数据库管理系统应用(本大题3道小题,共20分)。
在数据库管理系统下中完成以下任务(MS SQL Server或MS ACCESS)。使用MS SQL Server 的考生请注意,题目完成后,请将数据库分离,否则答题结果无法正确提交。
1.数据库创建(12分)。在C:\KS文件夹下建立数据库cp。
(1)表结构定义(6分):按照以下表结构在project数据库中建立装修公司c、项目P和承接项目表cp。
c表P表
Check 约束money>1000
create table cp
(cno char(10) foreign key (cno) references c(cno),
pno char(10) foreign key (cno) references p(pno),
primary key(cno,pno)) 或直接用ctrl选中
(2)关系模式优化(4分):正确实施各项关系完整性约束定义,定义各表的主关键字,并建立两张表之间的关系,实施参照完整性约束。
(3)数据填加(2分):完成两个表数据的添加。
2.数据库应用(4分)。从下面题目中选择完成任意一道小题。
(1)创建存储过程proc_search,查询指定名称的公司所承接的项目代码。
use cp
go
create procedure proc_search
@cname1 char(50)
as
select pno
from cp
where cno in(
select cno
from c
where cname=@cname1)
(2)在cp表上创建一个触发器tri_ins当对cp表进行插入操作时,检查c表中有否
相应的装修公司代码,如果有提示”插入成功”,否则提示”改代码不存在,将取消插
入操作”,取消事务。
use cp
go
create trigger tri_ins
on cp
after insert
as
if(select status from inserted,c
where o=o)='1'
begin
print '该代码不存在,将取消插入操作'
rollback transaction
end
else
begin
print'插入成功'
end
3。数据库管理(4分)。完成任意以下小题。
(1)将该数据库中导出到ACCESS文件中,命名为C:\KS\cp.mdb。
新建一个ACCESS文件再导入
(2)建立一个登录名super,密码为111(安全性里),默认数据库为cp,建立一个该登录下的用户wang,并设置其在c数据表的权限为只能读,不能更新(权限)。
(3)建立角色AAA,并将wang添加到该角色中, 并设置其在c数据表的权限为只能读,不能更新。
五、信息系统应用程序开发(15分)。使用应用程序开发工具访问“C:\样张”文件夹下存放的数据库filmmanager,请以该数据库中的employee表为数据源完成下面应用程序。
1.建立一个工程文件C:\KS\StGrade,主窗口如图1所示。