主题:谁来做下这套题(数据库/UNIX) 2
技能基础知识考试试题
SQL/UNIX/UNIX SHEL部分试题
一) 判断题(对的后面括弧中打√,错的打× 本大题共20小题,每题1分,共20分)
1)在两个数据表关联查询时,使用exists比 in的查询效率要高。( )
2)在truncate和delete等命令操作表里面数据时,用schema+tabname的方式来确定数据对象,清除数据的操作之前要确认是否需要做备份,是否做好备份。( )
3)用truncate清理表中的部分数据的效率比delete高。( )
4)自治块可以使得PL/SQL的存储过程更加独立。( )
5)删除分区表的某一个分区,不会导致该分区表上的全局索引失效。( )
6)索引只能告诉你什么存在于表中,而不能告诉你什么不存在于表中,在索引字段上进行非运算会使查询走不上索引,导致全表扫描。( )
7) 在大业务数据表上建立合理的索引,不仅可提高select查询操作效率,还可以提高该表的update、insert等操作的性能 。( )
8)在数据库中表数据对象包含用户的数据,而视图数据对象在执行之前不包含任何用户数据,只是一个已存储的SQL语句。( )
9)sqlerrm是用来从PL/SQL程序中获取Oracle错误序号的伪列。( )
10)显式的数据类型转换影响查询SQL语句的执行计划,而隐式的数据类型转换不会影响查询SQL语句的执行计划。( )
11)命令 chmod guo+rx 和命令 chmod uog+xr 是等价的。( )
12)在.profile登录文件中设有umask 013,则生成文件的缺省权限为:-rwxrw---x 。( )
13)使用vi编辑器可以对不同的编程语言编写程序。( )
14)管道就是将前一个命令的标准输出作为后一个命令的标准输入。( )
15)一个空目录和一个空文件默认大小都是0字节。( )
16)ls [!w]* 命令将会列出当前目录下所有不以字母w开头的文件名。( )
17)在shell程序中符号”#”是注释提示符,比如注释:#!/bin/sh。( )
18)shell脚本中整数运算式:expr 22 % 8 和 expr 2 \* 3 计算所获得的结果相等。( )
19)shell script 以 0 为 true ,非零值为 false 。( )
20)将and符号&追加在命令的结尾就可以把该命令放到后台运行。( )
二) 单项选择题(本大题共30小题,每题1分,共30分)在每小题列出的选项中只有一个选项是符合题目要求的,请将正确选项的字母填写在题干中的括号内。
试题21 ( )
在SQL语言中,一个基本表被删除,则与此基本表相关的下列内容中哪些也会被自动删除或失效?
1)在此表中的数据 2)在此表上建立的索引 3)在此表上建立的视图
供选择的答案:
A:1)和2)
B:2)和3)
C:1)和3)
D:全部
试题22 ( )
假设有关系CUST(REGION,CUSTID, CUSTNAME),主码是(CUSTID,REGION)。遵照实体完整性原则
供选择的答案:
A:仅CUSTID不能为空值
B:仅REGION不能为空值
C:仅CUSTNAME不能为空值
D:CUSTID和REGION都不能为空值
试题23 ( )
哪种数据对象必须具有返回值?
供选择的答案:
A: 包
B: 包体
C: 函数
D: 过程
E: 视图
试题24 ( )
用下面的脚本创建一个表对象
create table subjects(subjectid number
constraint pk_subject_id primary key,
subjectname varchar2(32)
constraint subjectname_nk not null
);
请选择结果正确的选项:
供选择的答案:
A: subject表上的两个字段上都有索引被创建。
B: 只有subjectid 字段上有索引被创建。
C: 只有subjectname 字段上有索引被创建。
D: 没有任何索引被创建为subject表。
试题25 ( )
假设你要永久的清空表subject 里面的所有数据,并且需要保留该表的表结构为将来使用,执行下面哪个单一命令可以实现?
供选择的答案:
A: drop table subject ;
B: delete * from subject ;
C: truncate table subject ;
D: delete * from subject keep structure;
E: truncate table subject keep structure;
试题26 ( )
在资源价格表中,条件 "where price between 100 and 200" 等价于:
供选择的答案:
A: where price > 100 and price < 200
B: where price >= 100 and price < 200
C: where price > 100 and price <= 200
D: where price >= 100 and price <= 200
试题27 ( )
下列DDL语句中,哪一条不是标准的SQL语句:
供选择的答案:
A: alter user
B: create directory
C: alter view
D: alter table
E: create table
试题28 ( )
请找出下列说法不正确的一个选项:
供选择的答案:
A: 创建表、存储过程、函数时,表名、存储过程名和函数名之后不要留空格。
B: 数据库具有较高的数据独立性,且其中的数据可以共享。
C: 关系数据库能体现一对一、一对多、多对一,但不能体现多对多的关系。
D: oracle数据库的包对象中可以包含很多存储过程。
E: 出于数据库性能考虑,对规范化的数据库的再考虑,可以修改表结构以允许冗余数据的存在。
试题29 ( )
分析下面逻辑块
if v_price > 1000 then
v_new_prcie := v_price/2;
elsif v_price > 2000 then
v_new_prcie := v_price/4;
elsif v_price > 4000 then
v_new_prcie := v_price/5;
elsif v_price > 5000 then
v_new_prcie := v_price/8;
else
v_new_prcie := v_price/10;
end if;
如果v_prcie=8000 那么v_new_prcie 应该等于多少?
供选择的答案:
A: 800
B: 1000
C: 1600
D: 2000
E: 4000
试题30 ( )
创建客户表(cust)结构如下:
custid number
custname varchar2(32)
custaddr varchar2(128)
分析下面代码块
declare
type cust_type is record
(
id number,
name vachar2(32)
);
r_cust cust_type;
begin
select custid, custname
into r_cust
from cust
wher custid=300123456789;
end;
下面哪个选项会显示出被选择的客户名字信息?
供选择的答案:
A: DBMS_OUTPUT.PUT_LINE(name);
B: DBMS_OUTPUT.PUT_LINE(custname);
C: DBMS_OUTPUT.PUT_LINE(r_cust .name);
D: DBMS_OUTPUT.PUT_LINE(r_cust .custname);
E: DBMS_OUTPUT.PUT_LINE(r_cust (name));
试题31 ( )
oracle服务分析执行子句正确顺序是:
供选择的答案:
A: having , where , group by
B: group by, having, where
C: where, having, group by
D: where, group by, having
试题32 ( )
某同学编写了一PL/SQL代码块,其中定义了一个number类型的变量,但没有对其进行初始化。当这个代码块执行时,该变量的初始值情况将会怎样?
供选择的答案:
A: 自动初始为0
B: 自动初始为null
C: 它将依赖于该变量的精确度
D: 因为变量没有被初始化,该代码块将不被执行
试题33 ( )
declare
cursor cur_org is select * from organization where itemid=v_orgid;
begin
for r_org in cur_org loop
DBMS_OUTPUT.PUT_LINE(r_org. itemname);
end loop;
close cur_org ;
end;
对上面代码块说法正确的是:
供选择的答案:
A: 游标cur_org需要被打开。
B: 游标cur_org定义不能使用变量。
C: 游标cur_org 不需要显式的关闭。
D: 上面代码块完全正确没有任何错误。
试题34 ( )
用户tbcs创建一个索引,语句如下:
create index idx_subs_servnumber on subscriber(servnumber);
请问该索引将会建在哪个表空间上?
供选择的答案:
A: SYSTEM表空间上
B: tbcs用户的缺省表空间上
C: 建立在subscriber表所在的表空间上
D: 语句不明确无法创建
试题35 ( )
下面哪个语句是DML的例子?
供选择的答案:
A: create
B: select
C: alter
D: drop
试题36 ( )
下面哪一个Oracle内置函数可以用来把输出存放到SQL*Plus会话中?
供选择的答案:
A: DBMS_PRINTOUT
B: DBMS_OUTPUT
C: DBMS_WRITETOSECREEN
D: DBMS_SERVEROUTPUT
试题37 ( )
在我们日常维护中,对oracle数据库的SQL*Plus会话正确关闭的命令是:
供选择的答案:
A: CTRL+C
B: end
C: quit
D: exit
试题38 ( )
在使用动态SQL 时,下面哪个命令可以用来运行程序?
供选择的答案:
A: execute immediate
B: run
C: start
D: execute
试题39 ( )
在日常维护管理中,通常CPU会影响系统性能的情况是:
供选择的答案:
A: CPU的运行效率为30%
B: CPU的运行效率为50%
C: CPU的运行效率为80%
D: CPU已满负荷地运转
试题40 ( )
具有很多C语言的功能,又称过滤器的unix命令是:
供选择的答案:
A: csh
B: bsh
C: awk
D: sed
试题41 ( )
一个文件名为tbcs.dmp.Z ,可以用下列哪个unix命令解压缩:
供选择的答案:
A: compress
B: gzip
C: tar
D: uncompress
试题42 ( )
现有两份将要处理的文本文件的拷贝,但不确定两份文件是否完全一样,为了确认它们是否一样可以使用的命令是:。
供选择的答案:
A: filecomp
B: file
C: diff
D: diffile
试题43 ( )
当前目录是 /home/oracle/bak2 ,如果要把当前目录的文件param.dmp拷贝到/home/oracle/bak6目录,正确的命令是:。
供选择的答案:
A: copy param.dmp /bak6
B: cp ../bak6 param.dmp
C: copy param.dmp ../bak6
D: cp param.dmp ../bak6
试题44 ( )
如果要得到一个子目录中的所有文件的列表(包括隐藏文件) ,而且要看到每个文件的权限和文件大小等信息,可以使用哪个命令可以实现?
供选择的答案:
A: ls -al
B: ls -ld
C: ls -af
D: ls -fs
试题45 ( )
为了跟踪定位当前系统用户的登录情况,并且把输出的信息按照ID排序,可以使用的命令是:
供选择的答案:
A: who | id | sort
B: who | sort
C: whois | sort
D: id | sort
试题46 ( )
可以从vi的指令模式转换到输入模式,并且开始添加文本的一项是:
供选择的答案:
A: A 、O 、 i
B: A 、w 、 i
C: I 、 o 、 q
D: d 、 a 、 i
试题47 ( )
用ls –l 命令列出下面的文件列表,通过属性位可以确定下面哪个选项列出的文件是连接文件。
供选择的答案:
A: -rw-r--r-- 1 oracle dba 49521 Oct 27 2005 result.lst
B: lrw-r--r-- 1 oracle dba 390 Apr 05 2006 createtab.sh
C: drw-r----- 1 oracle dba 11181 Jun 17 2005 admin
D: crw-r----- 1 oracle dba 11181 Jun 17 2005 ttyp8
E: brw-r----- 1 oracle dba 11181 Jun 17 2005 ramdisk0
试题48 ( )
在使用mkdir命令创建新目录时,在其父目录不存在的情况下,先创建父目录的选项是:
供选择的答案:
A: -d
B: -f
C: -m
D: -p
试题49 ( )
现有名为firstshell.sh脚本内容如下:
#!/bin/sh
name="Hello"
readonly name
name="${name},World!" 2 > /dev/null 2>&1
echo $name
运行firstshell.sh 下面描述正确是选项是:
供选择的答案:
A: 在屏幕上输出:Hello,World!
B: 在屏幕上输出:Hello
C: 在屏幕上什么都不输出
D: 脚本有误,不能被执行
试题50 ( )
shell程序程式中有许多特殊变量,下列哪一个选项代表程式的参数个数?。
供选择的答案:
A: $n
B: $*
C: $#
D: $?
SQL/UNIX/UNIX SHEL部分试题
一) 判断题(对的后面括弧中打√,错的打× 本大题共20小题,每题1分,共20分)
1)在两个数据表关联查询时,使用exists比 in的查询效率要高。( )
2)在truncate和delete等命令操作表里面数据时,用schema+tabname的方式来确定数据对象,清除数据的操作之前要确认是否需要做备份,是否做好备份。( )
3)用truncate清理表中的部分数据的效率比delete高。( )
4)自治块可以使得PL/SQL的存储过程更加独立。( )
5)删除分区表的某一个分区,不会导致该分区表上的全局索引失效。( )
6)索引只能告诉你什么存在于表中,而不能告诉你什么不存在于表中,在索引字段上进行非运算会使查询走不上索引,导致全表扫描。( )
7) 在大业务数据表上建立合理的索引,不仅可提高select查询操作效率,还可以提高该表的update、insert等操作的性能 。( )
8)在数据库中表数据对象包含用户的数据,而视图数据对象在执行之前不包含任何用户数据,只是一个已存储的SQL语句。( )
9)sqlerrm是用来从PL/SQL程序中获取Oracle错误序号的伪列。( )
10)显式的数据类型转换影响查询SQL语句的执行计划,而隐式的数据类型转换不会影响查询SQL语句的执行计划。( )
11)命令 chmod guo+rx 和命令 chmod uog+xr 是等价的。( )
12)在.profile登录文件中设有umask 013,则生成文件的缺省权限为:-rwxrw---x 。( )
13)使用vi编辑器可以对不同的编程语言编写程序。( )
14)管道就是将前一个命令的标准输出作为后一个命令的标准输入。( )
15)一个空目录和一个空文件默认大小都是0字节。( )
16)ls [!w]* 命令将会列出当前目录下所有不以字母w开头的文件名。( )
17)在shell程序中符号”#”是注释提示符,比如注释:#!/bin/sh。( )
18)shell脚本中整数运算式:expr 22 % 8 和 expr 2 \* 3 计算所获得的结果相等。( )
19)shell script 以 0 为 true ,非零值为 false 。( )
20)将and符号&追加在命令的结尾就可以把该命令放到后台运行。( )
二) 单项选择题(本大题共30小题,每题1分,共30分)在每小题列出的选项中只有一个选项是符合题目要求的,请将正确选项的字母填写在题干中的括号内。
试题21 ( )
在SQL语言中,一个基本表被删除,则与此基本表相关的下列内容中哪些也会被自动删除或失效?
1)在此表中的数据 2)在此表上建立的索引 3)在此表上建立的视图
供选择的答案:
A:1)和2)
B:2)和3)
C:1)和3)
D:全部
试题22 ( )
假设有关系CUST(REGION,CUSTID, CUSTNAME),主码是(CUSTID,REGION)。遵照实体完整性原则
供选择的答案:
A:仅CUSTID不能为空值
B:仅REGION不能为空值
C:仅CUSTNAME不能为空值
D:CUSTID和REGION都不能为空值
试题23 ( )
哪种数据对象必须具有返回值?
供选择的答案:
A: 包
B: 包体
C: 函数
D: 过程
E: 视图
试题24 ( )
用下面的脚本创建一个表对象
create table subjects(subjectid number
constraint pk_subject_id primary key,
subjectname varchar2(32)
constraint subjectname_nk not null
);
请选择结果正确的选项:
供选择的答案:
A: subject表上的两个字段上都有索引被创建。
B: 只有subjectid 字段上有索引被创建。
C: 只有subjectname 字段上有索引被创建。
D: 没有任何索引被创建为subject表。
试题25 ( )
假设你要永久的清空表subject 里面的所有数据,并且需要保留该表的表结构为将来使用,执行下面哪个单一命令可以实现?
供选择的答案:
A: drop table subject ;
B: delete * from subject ;
C: truncate table subject ;
D: delete * from subject keep structure;
E: truncate table subject keep structure;
试题26 ( )
在资源价格表中,条件 "where price between 100 and 200" 等价于:
供选择的答案:
A: where price > 100 and price < 200
B: where price >= 100 and price < 200
C: where price > 100 and price <= 200
D: where price >= 100 and price <= 200
试题27 ( )
下列DDL语句中,哪一条不是标准的SQL语句:
供选择的答案:
A: alter user
B: create directory
C: alter view
D: alter table
E: create table
试题28 ( )
请找出下列说法不正确的一个选项:
供选择的答案:
A: 创建表、存储过程、函数时,表名、存储过程名和函数名之后不要留空格。
B: 数据库具有较高的数据独立性,且其中的数据可以共享。
C: 关系数据库能体现一对一、一对多、多对一,但不能体现多对多的关系。
D: oracle数据库的包对象中可以包含很多存储过程。
E: 出于数据库性能考虑,对规范化的数据库的再考虑,可以修改表结构以允许冗余数据的存在。
试题29 ( )
分析下面逻辑块
if v_price > 1000 then
v_new_prcie := v_price/2;
elsif v_price > 2000 then
v_new_prcie := v_price/4;
elsif v_price > 4000 then
v_new_prcie := v_price/5;
elsif v_price > 5000 then
v_new_prcie := v_price/8;
else
v_new_prcie := v_price/10;
end if;
如果v_prcie=8000 那么v_new_prcie 应该等于多少?
供选择的答案:
A: 800
B: 1000
C: 1600
D: 2000
E: 4000
试题30 ( )
创建客户表(cust)结构如下:
custid number
custname varchar2(32)
custaddr varchar2(128)
分析下面代码块
declare
type cust_type is record
(
id number,
name vachar2(32)
);
r_cust cust_type;
begin
select custid, custname
into r_cust
from cust
wher custid=300123456789;
end;
下面哪个选项会显示出被选择的客户名字信息?
供选择的答案:
A: DBMS_OUTPUT.PUT_LINE(name);
B: DBMS_OUTPUT.PUT_LINE(custname);
C: DBMS_OUTPUT.PUT_LINE(r_cust .name);
D: DBMS_OUTPUT.PUT_LINE(r_cust .custname);
E: DBMS_OUTPUT.PUT_LINE(r_cust (name));
试题31 ( )
oracle服务分析执行子句正确顺序是:
供选择的答案:
A: having , where , group by
B: group by, having, where
C: where, having, group by
D: where, group by, having
试题32 ( )
某同学编写了一PL/SQL代码块,其中定义了一个number类型的变量,但没有对其进行初始化。当这个代码块执行时,该变量的初始值情况将会怎样?
供选择的答案:
A: 自动初始为0
B: 自动初始为null
C: 它将依赖于该变量的精确度
D: 因为变量没有被初始化,该代码块将不被执行
试题33 ( )
declare
cursor cur_org is select * from organization where itemid=v_orgid;
begin
for r_org in cur_org loop
DBMS_OUTPUT.PUT_LINE(r_org. itemname);
end loop;
close cur_org ;
end;
对上面代码块说法正确的是:
供选择的答案:
A: 游标cur_org需要被打开。
B: 游标cur_org定义不能使用变量。
C: 游标cur_org 不需要显式的关闭。
D: 上面代码块完全正确没有任何错误。
试题34 ( )
用户tbcs创建一个索引,语句如下:
create index idx_subs_servnumber on subscriber(servnumber);
请问该索引将会建在哪个表空间上?
供选择的答案:
A: SYSTEM表空间上
B: tbcs用户的缺省表空间上
C: 建立在subscriber表所在的表空间上
D: 语句不明确无法创建
试题35 ( )
下面哪个语句是DML的例子?
供选择的答案:
A: create
B: select
C: alter
D: drop
试题36 ( )
下面哪一个Oracle内置函数可以用来把输出存放到SQL*Plus会话中?
供选择的答案:
A: DBMS_PRINTOUT
B: DBMS_OUTPUT
C: DBMS_WRITETOSECREEN
D: DBMS_SERVEROUTPUT
试题37 ( )
在我们日常维护中,对oracle数据库的SQL*Plus会话正确关闭的命令是:
供选择的答案:
A: CTRL+C
B: end
C: quit
D: exit
试题38 ( )
在使用动态SQL 时,下面哪个命令可以用来运行程序?
供选择的答案:
A: execute immediate
B: run
C: start
D: execute
试题39 ( )
在日常维护管理中,通常CPU会影响系统性能的情况是:
供选择的答案:
A: CPU的运行效率为30%
B: CPU的运行效率为50%
C: CPU的运行效率为80%
D: CPU已满负荷地运转
试题40 ( )
具有很多C语言的功能,又称过滤器的unix命令是:
供选择的答案:
A: csh
B: bsh
C: awk
D: sed
试题41 ( )
一个文件名为tbcs.dmp.Z ,可以用下列哪个unix命令解压缩:
供选择的答案:
A: compress
B: gzip
C: tar
D: uncompress
试题42 ( )
现有两份将要处理的文本文件的拷贝,但不确定两份文件是否完全一样,为了确认它们是否一样可以使用的命令是:。
供选择的答案:
A: filecomp
B: file
C: diff
D: diffile
试题43 ( )
当前目录是 /home/oracle/bak2 ,如果要把当前目录的文件param.dmp拷贝到/home/oracle/bak6目录,正确的命令是:。
供选择的答案:
A: copy param.dmp /bak6
B: cp ../bak6 param.dmp
C: copy param.dmp ../bak6
D: cp param.dmp ../bak6
试题44 ( )
如果要得到一个子目录中的所有文件的列表(包括隐藏文件) ,而且要看到每个文件的权限和文件大小等信息,可以使用哪个命令可以实现?
供选择的答案:
A: ls -al
B: ls -ld
C: ls -af
D: ls -fs
试题45 ( )
为了跟踪定位当前系统用户的登录情况,并且把输出的信息按照ID排序,可以使用的命令是:
供选择的答案:
A: who | id | sort
B: who | sort
C: whois | sort
D: id | sort
试题46 ( )
可以从vi的指令模式转换到输入模式,并且开始添加文本的一项是:
供选择的答案:
A: A 、O 、 i
B: A 、w 、 i
C: I 、 o 、 q
D: d 、 a 、 i
试题47 ( )
用ls –l 命令列出下面的文件列表,通过属性位可以确定下面哪个选项列出的文件是连接文件。
供选择的答案:
A: -rw-r--r-- 1 oracle dba 49521 Oct 27 2005 result.lst
B: lrw-r--r-- 1 oracle dba 390 Apr 05 2006 createtab.sh
C: drw-r----- 1 oracle dba 11181 Jun 17 2005 admin
D: crw-r----- 1 oracle dba 11181 Jun 17 2005 ttyp8
E: brw-r----- 1 oracle dba 11181 Jun 17 2005 ramdisk0
试题48 ( )
在使用mkdir命令创建新目录时,在其父目录不存在的情况下,先创建父目录的选项是:
供选择的答案:
A: -d
B: -f
C: -m
D: -p
试题49 ( )
现有名为firstshell.sh脚本内容如下:
#!/bin/sh
name="Hello"
readonly name
name="${name},World!" 2 > /dev/null 2>&1
echo $name
运行firstshell.sh 下面描述正确是选项是:
供选择的答案:
A: 在屏幕上输出:Hello,World!
B: 在屏幕上输出:Hello
C: 在屏幕上什么都不输出
D: 脚本有误,不能被执行
试题50 ( )
shell程序程式中有许多特殊变量,下列哪一个选项代表程式的参数个数?。
供选择的答案:
A: $n
B: $*
C: $#
D: $?