2013 - 数据库设计工程师-笔试题 下载本文

内容发布更新时间 : 2024/11/9 4:44:41星期一 下面是文章的全部内容请认真阅读。

数据库设计工程师招聘试题

XXXX感谢您对本套试题的回答,首先请您填写上您的姓名(____________),本套试题将作为XXXX入职的参考,多谢您的重视。本套试题分三部分:填空题、选择题、简答题、综合题。时间60分钟,满分100分。

一、填空题(每题1分,共10分) 1. 程序 = 数据结构 + ( )

2. 索引字段值不唯一,应该使用的索引类型为( )

3. 只有满足联接条件的记录才包含在查询结果中,这种联接为( ) 4. 用二维表数据来表示实体及实体之间联系的数据模型称为( ) 5. E-R模型的组成包括那些元素( )( )( ) 6. 事务所具有的特性有( )( )( )( ) 7. 面向对象程序设计的特征( )( )( ) 8. 试列举ETL工具( )

9. STAR SCHEMA中的两种表( )( )

10. 位图索引主要用于( ),位图联接索引主要用于( )

二、选择题(每题1分,共10分)

1. 当表的重复行数据很多时,应该创建的索引类型应该是 ( )

A.B树 B.reverse C.bitmap D.函数索引

2. 在建表时如果希望某列的值,在一定的范围内,应建什么样的约束?( )

A.primary key B.unique C.check D.not null

3.你要在Oracle中定义SQL查询。下列哪个数据库对象不能直接从select语句中引用 ( ) A.表 B.序列 C.索引 D.视图

4. Oracle提供的( ),能够在不同硬件平台上的Oracle数据库之间传递数据。 A.归档日志运行模式 B.RECOVER命令 C.恢复管理器(RMAN) D.Export和Import工具

5. 在Oracle中,有一个名为seq的序列对象,以下语句能返回序列值但不会引起序列值增加的是 ( )

第 1 页 共 4 页

数据库设计工程师招聘试题

A.select seq.ROWNUM from dual; B.select seq.ROWID from dual; C.select seq.CURRVAL from dual; D.select seq.NEXTVAL from dual;

6. Oracle发出下列select语句: SQL> select e.empno, e.ename, d.loc 2 from emp e, dept d

3 where e.deptno = d.deptno

4 and substr(e.ename, 1, 1) = ‘S’;

下列哪个语句是Oracle数据库中可用的ANSI兼容等价语句 ( )

A.select empno, ename, loc from emp join dept on emp.deptno = dept.deptno where substr(emp.ename, 1, 1) = ‘S’;

B.select empno, ename, loc from emp, dept on emp.deptno = dept.deptno where substr(emp.ename, 1, 1) = ‘S’;

C.select empno, ename, loc from emp join dept where emp.deptno = dept.deptno and substr(emp.ename, 1, 1) = ‘S’; D.select empno, ename, loc from emp left join dept on emp.deptno = dept.deptno and substr(emp.ename, 1, 1) = ‘S’;

7. 有一产品表(编号,名称,价格,数量,所属分类),下列语法不正确的是 ( )

A.select * from 产品表 where价格>1000

B.select sum(价格) from 产品表 group by 所属分类 having max(价格)>1000 C.select所属分类,sum(价格) from 产品表 where 价格>1000 group by 所属分类

D.select所属分类,sum(价格) from 产品表 where max(价格)>1000 group by 所属分类

8. TEST表包含两个列,TESTCOL定义为数据类型NUMBER(10),TESTCOL_2定义为数据类型VARCHAR2(10)。在Oracle中发出下列语句:insert into test(testcol, testcol_2) values (null, ‘FRANCIS’),然后对表进行下列查询:select nvl(testcol, ‘EMPTY’) as testcol from test where testcol_2 = ‘FRANCIS’。下列选项哪个是得到的结果( ) A.Oracle返回结果0 B.Oracle返回结果EMPTY C.Oracle返回结果NULL D.Oracle返回错误结果

9. 在Oracle中,有一个教师表teacher的结构如下: ID NUMBER(5)

NAME VARCHAR2(25) EMAIL VARCHAR2(50)

下面哪个语句显示没有Email地址的教师姓名( ) A.SELECT name FROM teacher WHERE email = NULL; B.SELECT name FROM teacher WHERE email <> NULL; C.SELECT name FROM teacher WHERE email IS NULL;

D.SELECT name FROM teacher WHERE email IS NOT NULL;

10. select ename

第 2 页 共 4 页

数据库设计工程师招聘试题

from emp

where empno in ( select empno from expense

where vouch_amt > 10000 );

下列哪个SQL语句产生与上面相同的输出 ( )

A.select e.ename from emp e where exists(select x.empno from expense x where x.vouch_amt>10000) and x.empno = e.empno;

B.select e.ename from emp e where exists(select x.empno from expense x where x.vouch_amt>10000 and x.empno = e.empno);

C.select e.ename from emp e where x.empno = e.empno and exists(select x.empno from expense x where x.vouch_amt>10000)

D.select e.ename from emp e, expense x where x.empno = e.empno and x.vouch_amt>10000 and exists(select x.empno from expense x where)

三、简答题(每题5分,共50分) 1. Oracle的索引有几种,各有何用途

2. 何为分区表,有何用途,有几种分区方法 3. IOT表和簇表有何不同,各有何用途 4. 试述索引的作用,其优缺点是什么 5. 请描述char,varchar,nvarchar的区别 6. 试述如何维护数据库的完整性,一致性 7. 何为范式,有几种,试列举并简要描述之

8. OLTP、OLAP有何区别,在数据库设计和数据库配置上有何不同 9. 试论Oracle与SQL Server之区别

10. 你做过或熟悉什么应用系统,请简要画出其功能模块图,业务流程图

四、综合题(每题10分,共30分,第1题必做,其余任选两题) 1. 请以任何语言实现1+2+3+…+100

2. 请以任何语言实现求1-100之间的质数

3. 门外三个开关分别对应室内三盏灯,线路良好,在门外控制开关时候不能看到室内灯的情况,现在只允许进门一次,确定开关和灯的对应关系?

4. 烧一根不均匀的绳,从头烧到尾总共需要1个小时。现在有若干条材质相同的绳子,问如何用烧绳的方法来计时一个小时十五分钟呢?

5. 如果你有无穷多的水,一个3公升的提捅,一个5公升的提捅,两只提捅形状上下都不均匀,问你如何才能准确称出4公升的水?

6. 12个球一个天秤,现知道只有一个和其它的重量不同,问用天秤怎样称才能用三次就找到那个球。(注意此题并未说明那个球的重量是轻是重,所以需要仔细考虑)

第 3 页 共 4 页

数据库设计工程师招聘试题

7. 在9个点上画10条直线,要求每条直线上至少有三个点?

8. 在一天的24小时之中,时钟的时针、分针和秒针完全重合在一起的时候有几次?都分别是什么时间?你怎样算出来的?

第 4 页 共 4 页