『通信业』 [寻问求解] 求网友做亿阳信通笔试题
作者:easty999 提交日期:2006-5-21 18:32:50
Oracle试题
一、选择题
1.当你执行以下查询语句:
SELECT empno,ename
FROM emp
WHERE empno =7782 OR empno =7876;
在WHERE语句中,以下哪个操作符可以取代OR?
A. IN
B. BETWEEN ……
C. LIKE
D. E. >=
2. 哪个实现 IF..THEN…ELSE 逻辑?
A. INITCAP()
B. REPLACE()
C. DECODE()
D. IFELSE()
3. 以下哪行有错?
1 SELECT deptno
2 FROM emp
3 GROUP BY deptno
4 HAVING COUNT(deptno)=
5 (SELECT max(count(deptno))
6 FROM emp
7 GROUP BY deptno);
A. Line 3
B. Line 4
C. Line 5
D. Line 7
E. 都没错.
4. 当一个程序执行了 SELECT...FOR UPDATE 语句, 以下哪个步骤必须需要完成?
A. 执行 COMMIT or ROLLBACK 结束 transaction, 即使并没有数据改变。
B. 如果有数据改变,则需要执行commit or rollback 来结束 transaction。
C. 由于只有数据确实改变后,一个transaction 才会开始,所以现在不需要COMMIT or ROLLBACK 被执行。
5. 以下哪个命令可以被用来从表 STATE中 drop 列 UPDATE_DT ?
A. ALTER TABLE STATE DROP COLUMN UPDATE_DT;
B. ALTER TABLE STATE REMOVE COLUMN UPDATE_DT;
C. DROP COLUMN UPDATE_DT FROM STATE;
D. 你不能从这个表中DROP该列.
6. 哪个命令用来创建一个primary key constraint
pk_books 在表 BOOKS, 列 ISBN上? 请选择一个。
A. create primary key on books(ISBN);
B. create constraint pk_books primary key on books(ISBN);
C. alter table books add constraint pk_books primary key (ISBN);
D. alter table books add primary key (ISBN);
7. 以下哪行有错r?
1 X :=Y +200;
2 IF X 3 Y :=30;
4 ELSEIF X 5 Y :=20;
6 END IF;
A. Line 2
B. Line 3
C. Line 4
D. Line 5
8. 一个VIEW被以下语句创建,请问在该VIEW上可进行哪个操作?
CREATE VIEW USA_STATES
AS SELECT *FROM STATE
WHERE CNT_CODE =1
WITH READ ONLY;
A. SELECT
B. SELECT , UPDATE
C. SELECT , DELETE
D. SELECT , INSERT
二、问答
1/ 请简述ORACLE在UNIX平台下安装的步骤;
安装Oralce9i
安装JDK1.3.1
把下载的j2sdk-1.3.0-RC1-linux-i386.tar.bz2文件上传到服务器的/usr/local/目录下,以root用户登陆,用bzip –d j2sdk-1.3.0-RC1-linux-i386.tar.bz2命令先把文件解成tar格式,再使用tar xvf j2sdk-1.3.0-RC1-linux-i386.tar.bz2解压出来,为了便于操作可以把文件夹名改成jdk.。
配置x-windows
oracle9i的安装几乎支持所有的x-windows,也支持远程的虚拟x-windows安装,如果你要在本机安装在控制台上以我们先前创建的oracle用户登陆(注意要先设置好环境变量,并把DISPLAY的值设为空export DISPLAY=””)运行startx命令进入x-windows。
如果需要在远程终端使用虚拟x-windows进行安装,需要在客户端先安装x-win32软件,x-win32的安装过程我们就不多介绍了,安装完成后运行x-win32命令在你的任务栏会出现一个x的标致。使用neterm等终端攻击以oracle用户登陆系统确认环境变量都已经生效并且DISPLAY变量的值为你终端机的IP地址,运行startkde命令启动x-windows,运行完毕后系统会出现一大堆的出错信息,忽略不管,过了几秒后在你的远程终端上会出现Linux的kde界面。
2/ ORACLE的启动方式有哪几种?
有以下几种启动方式:
1、startup nomount
非安装启动,这种方式启动下可执行:重建控制文件、重建数据库
读取init.ora文件,启动instance,即启动SGA和后台进程,这种启动只需要init.ora文件。
2、startup mount dbname
安装启动,这种方式启动下可执行:
数据库日志归档、
数据库介质恢复、
使数据文件联机或脱机,
重新定位数据文件、重做日志文件。
执行“nomount”,然后打开控制文件,确认数据文件和联机日志文件的位置,
但此时不对数据文件和日志文件进行校验检查。
3、startup open dbname
先执行“nomount”,然后执行“mount”,再打开包括Redo log文件在内的所有数据库文件,
这种方式下可访问数据库中的数据。
4、startup,等于以下三个命令
startup nomount
alter database mount
alter database open
5、startup restrict
约束方式启动
这种方式能够启动数据库,但只允许具有一定特权的用户访问
非特权用户访问时,会出现以下提示:
ERROR:
ORA-01035: ORACLE 只允许具有 RESTRICTED SESSION 权限的用户使用
6、startup force
强制启动方式
当不能关闭数据库时,可以用startup force来完成数据库的关闭
先关闭数据库,再执行正常启动数据库命令
7、startup pfile=参数文件名
带初始化参数文件的启动方式
先读取参数文件,再按参数文件中的设置启动数据库
例:startup pfile=E:Oracleadminoradbpfileinit.ora
8、startup EXCLUSIVE
3/ 在ORACLE中控制文件起什么作用?
ORACLE的控制文件是数据库的非常重要的文件,
它保存着数据库的连接实例(instance)和database的一个桥梁,
它定义了当前数据库物理信息的状态。
因此控制文件对于一个数据库来说是非常重要的,
在某些时候我们需要重新创建控制文件:
4/、 请简述SGA的构成;
1. 使用单个共享内存段。
2. 使用连续多个共享内存段。
3. 使用多个不连续共享内存段。
Oracle优先使用的一种方法,如果成功,则继续初始化,不成功则使用第二种方法,
再不成功则使用第三种方法。
如果再不成功,
则初始化失败,Oracle报告错误代码。
5/、 数据库表空间一般分为那几类?每一类的大概功能?
1用户数据是特定应用程序的数据(例如客户发货单)。
2.系统数据是数据库系统管理自身所需的数据
(例如与特定数据库有关的所有数据文件的名称及存放地点)。
6/、 如何配置访问远程数据库的连接字符串?
7/、 访问远程数据库,在服务器端必须启动那一个进程用于网络监听?
8/、 ORACLE数据库有哪几种标准备分方式?
一、导出数据库
export命令将数据库中的数据备份成一个二进制文件,它通常有三种模式:用户模式、表模式和整个数据库模式。本文拟采用用户模式,备份之前,应先建立一个备份目录,以容纳备份文件,比如可建一个/backup目录。接着我们可在UNIX的Oracle目录下(也可以是其它目录)分别建立两个文件ora—backup,tar—backup。需要说明的是,前一个文件需要对Oracle的参数进行初始化,为了方便起见,我们不妨将初始化命令放到一个文件中(文件名姑且定为ora—env),再由第一个文件调用它。
1. ora—env文件对Oracle的参数进行初始化,其内容如下:
ORACLE—HOME=$ORACLE—HOME;export ORACLE—HOME
ORACLE—SID=ora73;export ORACLE—SID
ORACLE—TERM=sun;export ORACLE—TERM
LD—LIBRARY—PATH=$ORACLE—HOME/lib;export LD—LIBRARY—PATH
ORA—NLS32=$ORACLE—HOME/ocommon/nls/admin/data;export ORA—NLS
PATH=.:/usr/ccs/bin:/usr/ucb:$ORACLE—HOME/bin:$PATH;export PATH
DISPLAY=host1:0;export DISPLAY
NLS—LANG=american—america.zhs16cgb231280;export NLS—LANG
2. ora—backup文件对数据库做export导出,导出的文件名可以任意定,本文定为字母“xx”加当天日期,即假如当天日期是12月10号,则导出的文件名为“xx1210.dmp”,以区别于其它日期的备份文件。
ora—backup文件内容:
./oracle/ora—env
#初始化Oracle数据库
rq=′date +″%m%d″ ′
#把当天日期赋予变量rq
rm /backup/