数据库试卷及答案

更新时间:2023-05-14 14:01:36 阅读: 评论:0

一.选择题:
1.(  B)是位于用户和操作系统之间的一层数据管理软件。数据库在建立、使用和维护时由其统一管理、统一控制。
A. DB     B.DBMS       C.DBS       D.DBA
2. SQL语言允许使用通配符进行字符串匹配的作,其中‘%’可以表示( D
A、零个字符  B、1个字符  C、多个字符  D、以上都可以
3.下列哪一个数据库不是SQL Server 2000的系统数据库(
A.master数据库         B.msdb数据库
C.pubs数据库         D.model数据库 
4. 下列四项中,可以直接用于表示概念模型的是( )。
A. 网状模型             B.关系模型  
C.层次模型               D.实体-联系(E-R)模型
5.下列四项中说法不正确的是(  A )
A. 数据库避免了一切数据的重复 
B.数据库中的数据可以共享
C. 数据库减少了数据冗余     
D.数据库具有较高的数据独立性
6.公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从职员到部门的联系类型是(c   )
A.多对多      B.一对一     C.多对一     D.一对多
7 关系数据库中空值(NULL)相当于煎锅贴()
A. 零(0)   B. 空白   C. 零长度的字符串   D. 没有输入
8.事务有多个性质,其中不包括( )
A.隔离性     B. 不可撤消      C.原子性     D. 一致性
9.一个电视经销商在表Tvtype 中维护库存的Tvs信息,下述哪条语句能显示价格最昂贵的三种电视机的信息?( )
A. lect top3 cDiscription from Tvtype order by iprice asc
B. lect cDiscription from Tvtype where max(iprice)>3
C. lect top3 cDiscription from Tvtype order by iprice desc
D. lect cDiscription max(iprice) from Tvtype order by iprice
10.假如采用关系数据库系统来实现应用,在数据库设计的( )阶段,需要将E-R模型转换为关系数据模型。
A.概念设计     B.物理设计   C. 运行阶段   D. 逻辑设计
11光棍节说说.取出关系中的某些列,并消去重复的元组的关系运算称为( )
A.取列运算   B. 投影运算   C.连接运算    D. 选择运算
12.一家航空公司把一年中飞行距离idistancetravelled总包配合费超过10000里的客户信息转移到一张称为flyersclub 的表中,他们的详细情况被记录在表flyers ()
A. inrt into flyersclub from flyers where idistancetravelled>=10000
B. inrt flyersclub (idistancetravelled) values from flyers where idistancetravelled>=10000
C.inrt into flyersclub from flyers where (idistancetravelled)values>=10000
D. lect * into flyersclub from flyers where idistancetravelled >=10000
13. 系统死锁属于(  A )
A.事务故障     B.程序故障     C.系统故障    D.介质故障
二.填空题:
1.数据库系统中常用的三种数据模型有层次模型、网状模型 关系模型
2.SQL语言由数据定义语言、 数据操纵语言 数据控制语言 组成
3使用  filegrowth 命令可以增加数据库和事务日志的容量
4.关系模式的三类完整性约束条件分别是_实体完整性约束_、参照完整性约束和__域完整性约束__。
5.如果一个关系不满足2NF,则该关系一定也不满足_3nf_(在1NF、2NF、3NF范围内)
6 关键字是能唯一标识每一行的列或列的组合。一个表可能有多个关键字,选定其中一个作为主关键字,其余的称为 候选关键字 
7. 索引有两种类型: 聚集索引         非聚集索引        
8.当在一个已经存放了数据的表上增加主键时,SQL Server会自动对表中的数据进行检查,以确保这些数据能够满足主键约束的要求。问:满足
主键值要唯一     不允许为NULL   两个要求
9. 将视图v_Cour重命名为v_newCour的SQL语句是exec sp_rename v_Cour,v_newCour
三.操作题:
销售数据库Sales中存在这样的三张表
1.客户表(Customer)
部分英文
客户编号(CusNo)
姓名(CusName)
地址(Address)
电话(Tel)
C001
杨婷
北京
010-*******
C002
李和平
上海
C003
叶新
成都
024-*******
C004
冯辰诚
上海
2.产品表(Product)
产品编号(ProNo)
品名(ProName)
单价(price)
库存数量(Stocks)
分开造句
P0001
液晶电视
5600.00
800
P0002
空调
2390.00
460
P0003
洗衣机
3700.00
600
P0004
电热水器
890.00
120
3.销售表(ProOut)
抗衰老保健
销售日期(SaleDate)
客户编号(CusNo)
产品编号(ProNo)
销售数量(Quantity)
2007-10-27
C001
P0001
3
2007-11-06
C004
P0003
40
2007-12-27
C001
P0003
5
2008-3-15
C002
P0002
12
2008-05-02
C003
P0002
21
2008-05-02
C003漂浮的鸡蛋
P0001
9
吃什么补硒2008-09-21
C004
P0001
30
2008-11-21
C004
P0001
73
按要求完成下列题目:
(1)建立销售数据库Sales的以上三个表。(3分)
建立数据库Sales的三个表客户表(Customer)、产品表(Product)、销售表(ProOut)
(2)实现各表的实体完整性要求。(3分)
    客户表(Customer)的主键为:客户编号(CusNo)
产品表(Product) 的主键为:产品编号(ProNo)
销售表(ProOut) 的主键为:销售日期(SaleDate)、客户编号(CusNo)、产品   编号(ProNo)
(3)在Customer上基于CusName列创建非惟一索引;在Product上基于ProName列创建惟一索引;在ProOut上基于SaleDate列创建聚集的、惟一索引。(3分)
      CREATE INDEX IX_Customer ON Customer (CusName)
CREATE UNIQUE INDEX IX_Product ON Product (ProName)
CREATE UNIQUE CLUSTERED INDEX IX_ProOut ON ProOut (SaleDate)
(4)在ProOut表上设置外键,保证录入时的产品代码都在产品表中存在的。(3分)
    USE Sales
GO
ALTER TABLE ProOut
    ADD CONSTRAINT FK_ ProOut_ProNo FOREIGN KEY (ProNo)
    REFERENCES Product(ProNo)
GO
(5)创建一规则限定只能录入大于0的值,然后将其绑定到ProOut表上Quantity列。(3分)
      CREATE RULE RU_ProOut as @x>0
EXEC sp_bindrule RU_ProOut, 'ProOut. Quantity
(6)查询销售数量超过100的产品号。(3分)
    Select ProNo
from ProOut 
group by ProNo
having sum(Quantity)>100
(7)创建一自定义函数sumMoney,要求能够利用该函数计算出销售金额,并进行测试,利用该函数计算出每种产品(ProNo)的销售金额。(5分)
      create function sumMoney (@x Decimal,@y Decimal)
returns Decimal
as
begin
  return(@x*@y)
end
go
--测试
  lect PO.ProNo,ProName,dbo.sumMoney (price, sum(Quantity)) as '销售金额'
from Product as P, ProOut as PO
where P.ProNo=PO.ProNo
group by PO.ProNo,ProName,price
(8)查询购买了产品号“P0002”的客户编号、客户名和电话,查询结果按客户名降序排列分)
    lect P.CusNo, CusName,Tel
from ProOut as p, Customer as C
where P.ProNo=’P0002’  and P . CusNo = C . CusNo
order by CusName desc
(9)在查询的基础上创建一张新表Cus,要求显示客户“C004”在2008年购买的产品号、数量。分)
      lect CusNo, sum(Quantity)
from ProOut
where CusNo = ’C004’ and SaleDate > '2007-12-31'
(10)创建视图viewPro,要求显示种产品的销售量和销售金额分)
        create view viewPro
as
lect PO.ProNo,sum(Quantity) as '销售量',sum(Quantity *price) as '销售金额'

本文发布于:2023-05-14 14:01:36,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/89/897469.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:数据   数据库   关系   要求   产品
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图