oracle基础知识考试题_答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Oracle基础知识考试题

——孙云涛

部门:姓名:成绩:

一.问答题(33个,每题3分,最后一题4分,共100分):1.Oracle安裝完成后的初始口令?

internal/oracle

sys/change_on_install

system/manager

scott/tiger

sysman/oem_temp

2.怎么获取有哪些用户在使用数据库

select username from v$session;

3.数据表中一个表允许的字段最大数是多少?in()操作时集合里最多允许有多少个元素?

都是1000

4.如何在字符串里加回车?

select 'Welcome to visit'||chr(10)||'' from dual ;

5.怎样修改oracel数据库的默认日期?

alter session set nls_date_format='yyyymmddhh24miss';

6.请问如何修改一张表的主键?

alter table aaa

drop constraint aaa_key ;

alter table aaa

add constraint aaa_key primary key(a1,b1) ;

7.如何解决死锁问题:

第一步:

select ername,t2.sid,t2.serial#,t2.logon_time,t3.sql_text from v$locked_object t1,v$session t2,v$sqltext t3

where t1.session_id=t2.sid

and t2.sql_address=t3.address

order by t2.logon_time

第二步:

alter system kill session 'sid,serial#';

8.oarcle 数据库的连接字符是什么?

||

9.查询结果集做和和做差的函数分别是什么?

Union 和 minus

10.返回参数为星期几的sql语句写法:

SELECT TO_CHAR(SYSDATE,'D') FROM DUAL;

11.如何删除一个表的重复纪录

DELETE FROM TABLE_NAME

WHERE ROWID!=(SELECT MAX(ROWID) FROM TABLE_NAME D

WHERE TABLE_NAME.COL1=D.COL1 AND TABLE_NAME.COL2=D.COL2); 12.列出你所了解oracle的字符函数,个数不限

lower upper initcap concat substr instr

lpad rpad trim length

13.列出你所了解oracle的日期函数,个数不限

add_months months_between

round trunc

next_day last_day

14.列出你所了解oracle的数值函数,个数不限

round trunc mod

15.列出你所了解oracle的组函数,个数不限

avg min max sum count

16.怎样得到一个字符串中字母a的个数?写出一个方法即可:

Select length( ‘abcabcabc’)-length(replace(‘abcabcabc’,’a’,’’) from dual

17.唯一索引和主键的区别是什么?

主键不可以为null,唯一索引可以。

18.列出你所了解到的分析函数,个数不限。

cume_dist() ,dense_rank() ,first_value(),last_value(),rank() ,dense_rank (),row_number()

19.分析函数rank() 和dense_rank ()的区别是什么?

存在查询结果重复时前者跳号,后者不跳号。

20.在查询语句中使用函数是非常方便的,你能否列出一个不利的方面,及其解决办法?

在大量数据上使用函数,在一定程序上会减低查询速度这个时候可以考虑为这些函数建立函数索引

21.在执行delete、update等操作时,要注意什么问题,请列举一个。

注意回滚空间问题。

22.请写一个任意的存储过程。

create or replace procedure aaaa is

sql_str varchar2(200);

begin

sql_str:='select ''abc'' abc,''def'' def from dual';

execute immediate sql_str;

return;

end aaaa;

23.请写一个任意游标。

cursor c_alarm_item is

select alarmname,ruleset,trim(objnamedby) as nestr,trim(reportvalue) as datastr,tablename

from nigeria_ad.pm_alarm_ex where alarmenabled=1;

24.请随意写一个创建触发器的例子。

CREATE OR REPLACE TRIGGER update_job_history

AFTER UPDATE OF job_id, department_id ON employees

FOR EACH ROW

BEGIN

add_job_history(:old.employee_id, :old.hire_date, sysdate,

:old.job_id, :old.department_id);

END;

25.请用sql语句建立一个job,任举一例。

VARIABLE jobdxm number;

begin

dbms_job.submit(:jobdxm,'P_STARTNEMESS;',sysdate,'trunc(sysdate+1)+7/24'); commit;

end;

26.游标的for循环中注意的问题,任举一例。

不需要显式的打开游标,即无需使用open语句

27.存储过程和函数在pl/sql developer里能不能单步调试?

能!

28.写一个游标变量的例子。

相关文档
最新文档