数据库笔试题及答案

数据库笔试题及答案

【篇一:sql数据库经典面试题(修改笔试题)(有答案)】

部门,平均工资,要求按部门的字符串顺序排序,不能含有human resource部门,employee结构如下:

employee_id, employee_name,depart_id,depart_name,wage 答:

select depart_name, avg(wage)

from employee where depart_name human resource

group by depart_name order by depart_name

-------------------------------------------------------------------------- 29.

给定如下sql数据库:test(num int(4)) 请用一条sql语句返回num的最小值,但不许使用统计功能,如min,max等

答:

select top 1 num from test order by num

--------------------------------------------------------------------------

33.一个数据库中有两个表:

一张表为customer,含字段id,name;

一张表为order,含字段id,customerid(连向customer中id的外键),revenue;

写出求每个customer的revenue总和的sql语句。

建表 create table customer

(id int primary key,name char(10))

go

create table [order]

(id int primary key,customerid int foreign key references

customer(id) , revenue float)

go

--查询

select customer.id, sum( isnull([order].revenue,0) )

from customer full join [order]

on( [order].customerid=customer.id ) group by customer.id

select customer.id,sum(order.revener) from order,customer where customer.id=customerid group by customer.id

select customer.id, sum(order.revener ) from customer full join order on( order.customerid=customer.id ) group by customer.id

5数据库(10)

a tabel called “performance”contain

:name and score,please 用

sql语言表述

如何选出score最high的一个(仅有一个)

仅选出分数,select max(score) from performance

仅选出名字,即选出名字,又选出分数: select top 1

score ,name from per order by score

select name1,score from per where score in/=(select

max(score) from per)

.....

4 有关系 s(sno,sname) c(cno,cname) sc(sno,cno,grade)

1 问上课程 db的学生no

select count(*) from c,sc where https://www.360docs.net/doc/2917951290.html,ame=db and https://www.360docs.net/doc/2917951290.html,o=https://www.360docs.net/doc/2917951290.html,o select count(*) from sc where cno=(select cno from c where

https://www.360docs.net/doc/2917951290.html,ame=db)

2 成绩最高的学生号

select sno from sc where grade=(select max(grade) from sc ) 3 每科大于90分的人数

select https://www.360docs.net/doc/2917951290.html,ame,count(*) from c,sc where https://www.360docs.net/doc/2917951290.html,o=https://www.360docs.net/doc/2917951290.html,o and

sc.grade90 group by https://www.360docs.net/doc/2917951290.html,ame

select https://www.360docs.net/doc/2917951290.html,ame,count(*) from c join sc on https://www.360docs.net/doc/2917951290.html,o=https://www.360docs.net/doc/2917951290.html,o and sc.grade90 group by https://www.360docs.net/doc/2917951290.html,ame

数据库笔试题

*

建表:

dept:

deptno(primary key),dname,loc

emp:

empno(primary key),ename,job,mgr,sal,deptno

*/

1 列出emp表中各部门的部门号,最高工资,最低工资

select max(sal) as 最高工资,min(sal) as 最低工资,deptno from emp group by deptno;

2 列出emp表中各部门job为clerk的员工的最低工资,最高工资 select max(sal) as 最高工资,min(sal) as 最低工资,deptno as 部门号 from emp where job = clerk group by deptno;

3 对于emp中最低工资小于1000的部门,列出job为clerk的员

工的部门号,最低工资,最高工资

select max(sal) as 最高工资,min(sal) as 最低工资,deptno as 部

门号 from emp as b

where job=clerk and 1000(select min(sal) from emp as a where

a.deptno=

b.deptno) group by b.deptno

4 根据部门号由高而低,工资有低而高列出每个员工的姓名,部门号,工资

select deptno as 部门号,ename as 姓名,sal as 工资 from emp order by deptno desc,sal asc

5 写出对上题的另一解决方法

(请补充)

6 列出张三所在部门中每个员工的姓名与部门号

select ename,deptno from emp where deptno = (select deptno from emp where ename = 张三)

7 列出每个员工的姓名,工作,部门号,部门名

select ename,job,emp.deptno,dept.dname from emp,dept

where emp.deptno=dept.deptno

8 列出emp中工作为clerk的员工的姓名,工作,部门号,部门名

select ename,job,dept.deptno,dname from emp,dept where

dept.deptno=emp.deptno and job=clerk

9 对于emp中有管理者的员工,列出姓名,管理者姓名(管理者外

键为mgr) select a.ename as 姓名,b.ename as 管理者 from emp as a,emp as b where a.mgr is not null and a.mgr=b.empno

10 对于dept表中,列出所有部门名,部门号,同时列出各部门工

作为clerk的员工名与工作

select dname as 部门名,dept.deptno as 部门号,ename as 员工名,job as 工作 from dept,emp

where dept.deptno *= emp.deptno and job = clerk

11 对于工资高于本部门平均水平的员工,列出部门号,姓名,工资,按部门号排序

select a.deptno as 部门号,a.ename as 姓名,a.sal as 工资 from emp as a where a.sal(select avg(sal) from emp as b where

a.deptno=

b.deptno) order by a.deptno

12 对于emp,列出各个部门中平均工资高于本部门平均水平的员工

数和部门号,按部门号排序

select count(a.sal) as 员工数,a.deptno as 部门号 from emp as a

where a.sal(select avg(sal) from emp as b where

a.deptno=

b.deptno) group by a.deptno order by a.deptno

13 对于emp中工资高于本部门平均水平,人数多与1人的,列出部门号,人数,按部门号排序

select count(a.empno) as 员工数,a.deptno as 部门号,avg(sal) as 平均工资 from emp as a

where (select count(c.empno) from emp as c where

c.deptno=a.deptno and c.sal(select avg(sal) from emp as b where c.deptno=b.deptno))1 group by a.deptno order by

a.deptno

14 对于emp中低于自己工资至少5人的员工,列出其部门号,姓名,工资,以及工资少于自己的人数

select a.deptno,a.ename,a.sal,(select count(b.ename) from emp as b where b.sala.sal) as 人数 from emp as a

where (select count(b.ename) from emp as b where

b.sala.sal)5 数据库笔试题及答案

第一套

一.选择题

1. 下面叙述正确的是ccbad ______。

a、算法的执行效率与数据的存储结构无关

b、算法的空间复杂度是指算法程序中指令(或语句)的条数

c、算法的有穷性是指算法必须能在执行有限个步骤之后终止

d、以上三种描述都不对

2. 以下数据结构中不属于线性数据结构的是______。a、队列b、线性表c、二叉树d、栈

3. 在一棵二叉树上第5层的结点数最多是______。a、8 b、16 c、32 d、15

4. 下面描述中,符合结构化程序设计风格的是______。

a、使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑

b、模块只有一个入口,可以有多个出口

c、注重提高程序的执行效率

d、不使用goto语句

5. 下面概念中,不属于面向对象方法的是______。

a、对象

b、继承

c、类

d、过程调用

6. 在结构化方法中,用数据流程图(dfd)作为描述工具的软件开发阶段是___ bdbca ___。

a、可行性分析

b、需求分析

c、详细设计

d、程序编码

7. 在软件开发中,下面任务不属于设计阶段的是______。

a、数据结构设计

b、给出系统模块结构

c、定义模块算法

d、定义需求并建立系统模型

8. 数据库系统的核心是______。

a、数据模型

b、数据库管理系统

c、软件工具

d、数据库

9. 下列叙述中正确的是______。

a、数据库是一个独立的系统,不需要操作系统的支持

b、数据库设计是指设计数据库管理系统

c、数据库技术的根本目标是要解决数据共享的问题

d、数据库系统中,数据的物理结构必须与逻辑结构一致10. 下列模式中,能够给出数据库物理存储结构与物理存取方法的是______。 a、内模式 b、外模式 c、概念模式 d、逻辑模式 11. visual foxpro数据库文件是__ dcbaa ____。 a、存放用户数据的文件 b、管理数据库对象的系统文件

c、存放用户数据和系统的文件

d、前三种说法都对

12. sql语句中修改表结构的命令是______。

a、modify table

b、modify structure

c、alter table

d、alter structure

13. 如果要创建一个数据组分组报表,第一个分组表达式是部门,第二个分组表达式是性别,第三个分组表达式是基本工资,当前索引的索引表达式应当是______。

a、部门+性别+基本工资

b、部门+性别+str(基本工资)

c、str(基本工资)+性别+部门

d、性别+部门+str(基本工资)

14. 把一个项目编译成一个应用程序时,下面的叙述正确的是

______。

a、所有的项目文件将组合为一个单一的应用程序文件

b、所有项目的包含文件将组合为一个单一的应用程序文件

c、所有项目排除的文件将组合为一个单一的应用程序文件

d、由用户选定的项目文件将组合为一个单一的应用程序文件

15. 数据库db、数据库系统dbs、数据库管理系统dbms三者之间的关系是______。

a、dbs包括db和dbms

b、dbms包括db和dbs

c、db包括dbs和dbms

d、dbs就是db,也就是dbms

16. 在选项对话框的文件位置选项卡中可以设置_ baaba _____。

a、表单的默认大小

b、默认目录

c、日期和时间的显示格式

d、程序代码的颜色

17. 要控制两个表中数据的完整性和一致性可以设置参照完整性,要求这两个表______。

a、是同一个数据库中的两个表

b、不同数据库中的两个表

c、两个自由表

d、一个是数据库表另一个是自由表

18. 定位第一条记录上的命令是______。

a、go top

b、go bottom

c、go 6

d、skip

19. 在关系模型中,实现关系中不允许出现相同的元组的约束是通过______。

a、候选键

b、主键

c、外键

d、超键

20. 设当前数据库有10条记录(记录未进行任何索引),在下列三种情况下,当前记录号为1时;eof()为真时;bof()为真时,命令?recn()的结果分别是______。

a、1,11,1

b、1,10,1

c、1,11,0

d、1,10,0

21. 下列表达式中结果不是日期型的是__ ccbba ____。

a、ctod(2000/10/01)

b、{^99/10/01}+365

c、val(2000/10/01)

d、date()

【篇二:数据库试卷及答案】

p> 1.(b)是位于用户和操作系统之间的一层数据管理软件。数据库在建立、使用和维护时由其统一管理、统一控制。

a. dbb.dbmsc.dbs d.dba

2. sql语言允许使用通配符进行字符串匹配的操作,其中‘%’可以表示( d )

a、零个字符

b、1个字符

c、多个字符

d、以上都可以 3.下列哪一个数据库不是sql server 2000的系统数据库( c ) a.master 数据库b.msdb数据库

c.pubs数据库 d.model数据库

4.下列四项中,可以直接用于表示概念模型的是( d )。 a. 网状模型 b.关系模型 c.层次模型d.实体-联系(e-r)模型 5.下列四项中说法不正确的是( a )

a. 数据库避免了一切数据的重复

b.数据库中的数据可以共享

c. 数据库减少了数据冗余

d.数据库具有较高的数据独立性

6.公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从职员到部门的联系类型是(c)

a.多对多

b.一对一

c.多对一

d.一对多

7.关系数据库中空值(null)相当于( d)

a. 零(0)

b. 空白

c. 零长度的字符串

d. 没有输入 8.事务有多个性质,其中不包括( b)

a.隔离性

b. 不可撤消

c.原子性

d. 一致性 9.一个电视经销商在表tvtype 中维护库存的tvs信息,下述哪条语句能显示价格最昂贵的三种电视机的信息?( c)

a. select top3 cdiscription from tvtype order by iprice asc

b. select cdiscription from tvtype where max(iprice)3

c. select top3 cdiscription from tvtype order by iprice desc

d. select cdiscription max(iprice) from tvtype order by iprice 10.假如采用关系数据库系统来实现应用,在数据库设计的( d )阶段,需要将e-r模型转换为关系数据模型。

a.概念设计

b.物理设计

c. 运行阶段

d. 逻辑设计 11.取出关系中的某些列,并消去重复的元组的关系运算称为( b) a.取列运算 b. 投影运算 c.连接运算 d. 选择运算 12.一家航空公司把一年中飞行距离(idistancetravelled)超过10000里的客户信息转移到一张称为flyersclub 的表中,他们的详细情况被记录在表flyers ( d)

a. insert into flyersclub idistancetravelled=10000

from

flyers

where

b. insert flyersclub (idistancetravelled) values from flyers where idistancetravelled=10000

c.insert into flyersclub (idistancetravelled)values=10000

from

flyers

where

d. select * 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_course重命名为v_newcourse的sql语句是:exec

sp_rename v_course,v_newcourse。

三.操作题:

销售数据库sales中存在这样的三张表: 1.客户表(customer)

2.产品表(product)

3.销售表(proout)

按要求完成下列题目:

(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 @x0

exec sp_bindrule ru_proout, proout. quantity’

(6)查询销售数量超过100的产品号。(3分)

select prono

from prooutgroup by prono

having sum(quantity)100

(7)创建一自定义函数summoney,要求能够利用该函数计算出销售金额,

【篇三:数据库期末考试复习题及答案】

择题

(本大题共20小题,每小题2分,共40分)

在每小题列出的四个备选项中只有一个是符合题目要

求的,请将其代码填写在题后的括号内。错选、多选

或未选均无分。

1. 数据库系统的核心是( b)

a.数据库b.数据库管理系统

c.数据模型d.软件工具

2. 下列四项中,不属于数据库系统的特点的是( c )

a.数据结构化

c.数据冗余度大 b.数据由dbms统一管理和控制 d.数据独立性高

3. 概念模型是现实世界的第一层抽象,这一类模型中最著名的模型是

( d)

a.层次模型

c.网状模型 b.关系模型 d.实体-联系模型

4. 数据的物理独立性是指( c)

a.数据库与数据库管理系统相互独立

b.用户程序与数据库管理系统相互独立

c.用户的应用程序与存储在磁盘上数据库中的数据是相互独立的d.应用程序与数据库中数据的逻辑结构是相互独立的

5.要保证数据库的逻辑数据独立性,需要修改的是( a )

a.模式与外模式之间的映象 b.模式与内模式之间的映象

c.模式 d.三级模式

6.关系数据模型的基本数据结构是( d )

a.树 b.图 c.索引 d.关系

7.有一名为“列车运营”实体,含有:车次、日期、实际发车时间、实际抵达

时间、情况摘要等属性,该实体主码是(c )

a.车次b.日期

c.车次+日期 d.车次+情况摘要

8. 己知关系r和s,r∩s等价于( b

1

9.学校数据库中有学生和宿舍两个关系:

学生(学号,姓名)和宿舍(楼名,房间号,床位号,学号)

假设有的学生不住宿,床位也可能空闲。如果要列出所有学生住宿

和宿舍分

配的情况,包括没有住宿的学生和空闲的床位,则应执行(a)

a. 全外联接

b. 左外联接

c. 右外联接

d. 自然联接

10.用下面的t-sql语句建立一个基本表:

create table student(sno char(4) primary key,

sname char(8) not null,

sex char(2),

age int)

可以插入到表中的元组是( d )

a. 5021,刘祥,男,21

b. null,刘祥,null,21

c. 5021,null,男,21

d. 5021,刘祥,null,null

11. 把对关系spj的属性qty的修改权授予用户李勇的t-sql语句是( c )

a. grant qty on spj to 李勇

b. grant update(qty) on spj to 李勇

c. grant update (qty) on spj

to 李勇

d. grant update on spj (qty) to 李勇

12. 图1中( b)是最小关系系统

abc d

图1

13.关系规范化中的插入操作异常是指 (d)

a.不该删除的数据被删除 b.不该插入的数据被插入

c.应该删除的数据未被删除 d.应该插入的数据未被插入

14.在关系数据库设计中,设计关系模式是数据库设计中(a)阶段的任

a.逻辑设计 b.物理设计 c.需求分析 d.概念设计

2 a. (r-s)-sc. (s-r)-r b. s-(s-r) d. s-(r-s)

15.在e-r模型中,如果有3个不同的实体型,3个m:n联系,根据e-r模型转

换为关系模型的规则,转换后关系的数目为(c )。

a.4b.5c.6d.7

16.事务的隔离性是指( a )。

a.一个事务内部的操作及使用的数据对并发的其他事务是隔离的 b.事务一旦提交,对数据库的改变是永久的

c.事务中包括的所有操作要么都做,要么都不做

d.事务必须是使数据库从一个一致性状态变到另一个一致性状态 17. 数据库恢复的基础是利用转储的冗余数据。这些转储的冗余数据是指

( c )

a. 数据字典、应用程序、审计档案、数据库后备副本

b. 数据字典、应用程序、日志文件、审计档案

c. 日志文件、数据库后备副本

d. 数据字典、应用程序、数据库后备副本

18.若事务t对数据对象a加上s锁,则( b )。

a.事务t可以读a和修改a,其它事务只能再对a加s锁,而不能加x 锁。

b.事务t可以读a但不能修改a,其它事务只能再对a加s锁,而不能加

x 锁。

c.事务t可以读a但不能修改a,其它事务能对a加s锁和x锁。 d.事务t可以读a和修改a,其它事务能对a加s锁和x锁。

19. 设有两个事务t1、t2,其并发操作如图2所示,下面评价正确的是( b )

a. 该操作不存在问题

b. 该操作丢失修改

c. 该操作不能重复读

d. 该操作读“脏”数据

①读a=100

②读a=100

③ a=a-5写回

④ a=a-8写回

图2 20. 以下( d )封锁违反两段锁协议。

a. slock a … slock b … xlock c ………… unlock a … unlock

b … unlock c

b. slock a … slock b … xlock c ………… unlock c … unlock

b … unlock a

c. slock a … slock b … xlock c ………… unlock b … unlock

c … unlock a

d. slock a …unlock a ……slock b … xlock c ………...unlock

b … unlock c

3

二、填空题

(本大题共9小题,每空1分,共10分)

请在每小题的空格中填上正确答案。错填、不填均无分。

1. 关系数据模型由关系数据结构、关系操作和

三部分组成。关系数据结构,关系操作,关系完整性约束

2. 一般情况下,当对关系r和s使用自然连接时,要求r和s含有一个或多个

共有的属性属性

3. 在student表的sname列上建立一个唯一索引的sql语句为:

4. select语句查询条件中的谓词“!=all”与运算符等价

8. 存在一个等待事务集{t0,t1,?,

tn},其中t0正等待被t1锁住的数据项,

t1正等待被t2锁住的数据项,tn-1正等待被tn锁住的数据项,且tn正等待

被t0锁住的数据项,这种情形称为死锁。

三、简答题

(第1、3题3分,第2题4分,共10分)

1.试述关系模型的参照完整性规则?

答:参照完整性规则:若属性(或属性组)f是基本关系r的外码,它与

基本关系s的主码ks相对应(基本关系r和s不一定是不同的关系),

则对于r中每个元组在f上的值必须为:取空值(f的每个属性值均为空

值)或者等于s中某个元组的主码值。

2.试述视图的作用?

(1)视图能够简化用户的操作。(1分)

(2)视图使用户能以多种角度看待同一数据。(1分)

(3)视图对重构数据库提供了一定程度的逻辑独立性。(1分)(4)视图能够对机密数据提供安全保护。(1分)

4

3. 登记日志文件时必须遵循什么原则?

登记日志文件时必须遵循两条原则:

(1)登记的次序严格按并发事务执行的时间次序。(1分)

(2)必须先写日志文件,后写数据库。(2分)

( 第1题4分,第2题6分,第3题3分,第4题4分,

第5题8分,共25分)

1.设教学数据库中有三个基本表:

学生表s(sno,sname,age,sex),其属性分别表示学号、学生姓名、年龄、性别。课程表c(cno,cname,teacher),其属性分别表示课程号、课程名、上课教师名。选修表sc(sno,cno,grade),其属性分别表示学号、课程号、成绩。

有如下sql查询语句:

select cno

from c

where cno not in

(select cno

from s,sc

where s.sno=sc.sno

and sname=张三);

请完成下列问题:

(1)用汉语句子阐述上述sql语句的含义;

(2)用等价的关系代数表达式表示上述sql查询语句。

解:(1)查询张三同学没有选修的课程的课程号。(2分)

sc)) (2分)

2. 设有如图3所示的三个关系。其中各个属性的含义如下:a#(商店代号)、

aname(商店名)、wqty(店员人数)、city(所在城市)、b#(商品号)、bname(商品名称)、price(价格)、qty(商品数量)。

a b 5

相关文档
最新文档