oracle数据库习题
⑴ 帮忙把下面的这几个题解答一下 关于oracle 数据库的 谢谢!
1、Web 其实写B/S也可以的
2、主机地址(填ip地址也可以)和端口号
2、i代表Internet,g代表grid,也就是网格计算的意思
3、概念问题,不好说了
4、控制文件、数据文件
5、表空间、数据库(没听说过其他的层次,Oracle官方的教材也只讲数据库、表空间、段、区、块这五层)
6、数据库对象
7、desc、select
8、http://地址:端口/em
9、
10、connect、resource、dba,dba角色权限最大
选择题
1、A
2、C
3、D
4、A
5、D
6、C
7、C
8、A
9、A
10、B
11、D
12、A
13、C
14、D
15、B
⑵ ORACLE选择题
11) b) IS NULL
12) b) CREATE PUBLIC SYNONYM cust FOR mary.customer
13) c) PL/sql
14) c) test(‘string',v-numl, v-str2)
15) c) set serverout on
我考过ORACLE的铜牌。有些问题我也帮你在网上查了一下。
⑶ Oracle创建学生选课数据库。完成下列要求:
学生表 student
课程表 course
学生选课关系表 stucourse
create table student(sno number primary key,sname varchar2(20));
insert into student values(1,'alley');
insert into student values(2,'bob');
commit;
create table course(cno number primary key,cname varchar2(20));
insert into course values(1,'语文');
insert into course values(2,'数学');
commit;
create table stucourse(sno number,cno number);
alter table stucourse add constraint pk_stucource primary key(sno,cno);
insert into stucourse values(1,1);
insert into stucourse values(1,2);
insert into stucourse values(2,1);
commit;
2. select a.sname,c.cname
from student a,stucourse b,coursec
where a.sno = b.sno and b.cno=c.no;
3. 查询选修一门以上的学生,按学号从小到大排序
select a.sno, a.sname
from student a,stucourse b,course c
where a.sno = b.sno and b.cno=c.no
group by a.sno,a.sname
having count(1)>=1
order by a.sno;
4、各用一条语句实现下列功能:添加表的列、更新表的某一字段值、删除表的列、删除表数据、修改表的名称。
alter table student add ssex varchar2(2);
update student set ssex='女';
alter table student drop column ssex;
delete from student where sno=1;
alter table student rename to studentnew;
5、在PL/SQL中执行SELECT语句:在某一实体表中,查询符合某一条件的记录,并显示相应的几个字段值
select sno, sname
from student
where sno=1;
6、用CASE语句实现一多分支结构
select case when sno=1 then '学号1‘ when sno=2 then '学号2' else '其他学号' end
from student;
⑷ 请帮忙解决一道Oracle数据库试题:
用管道函数:
create or replace type rec_list is table of number;
CREATE OR REPLACE FUNCTION pipe_rec (pmax NUMBER)
RETURN rec_list PIPELINED
IS
BEGIN
FOR i IN 1 .. pmax
LOOP
PIPE ROW (i);
END LOOP;
RETURN;
END;
/
insert into a
select a.*,1 from table(pipe_rec(10000000)) b
⑸ oracle数据库面试题
1、b没有访问表employee的权限,或者有权限但是在做desc时没有加用户名在表前面。
2、在建表时设置了max extent参数导致了表extent数满了之后不能再进行扩展。
3、tablespace full表示该表空间没有可扩展的块了,这是设置了datafile为autoextend off后或者系统中没有可扩展的物理空间导致。
4、首先我需要有一张主表(pri)拥有关键字段(id),然后分两种情况,一种是目标表不存在的情况那么我需要建立目标表,如:create table oerder(id not null,aa char(8),id_p int, primary key(id),forergn key (id_p) references pri(id));。另一种情况是目标表存在,则增加约束条件:alter table order add foreign key (id_p) references pri(id);
5、pct_increase代表的是表在做了第一次extent后,下次再扩展时的增量,它是一个百分比值,也就是说,如果你设置了该值为50那么在表下一次扩展时扩展量就增加为150%。这是个很“恐怖”的设置,如果你使用了它那么有可能你会发现你的表空间很快就没有可扩展的地方了。
6、英文不好,题目意思没读懂。
7、这题还是分两种情况,一种是nt server就是你的database server,那么你可能需要先在nt server上确认listener已经启动,然后进行ping和tracert看看是否是网络问题,最后检查pc上的tnsnames.ora配置文件是否正确,在pc上做tracerc看网络链接是否正常?检查pc上防火墙的设置等。如果nt server 不是你的database server那么说明你的database server的网络链接是正常的,那么需要的就是:检查pc上的tnsnames.ora配置文件是否正确,在pc上做tracerc看网络链接是否正常,检查pc上防火墙的设置等。当然还有一种比较特殊的情况,在pc安装了64位win操作系统+32位的oracle时会发生在cmd下可以进行链接,但是使用oracle的其他连接方式如客户端,oem等等就会报tns错误,这是oracle本身的bug。
8、char和varchar2最根本的区别就在于一个是固定长度,另一个是可变长度。它们对空间的占用量是不同的,在同样长度的字符下char类型的需要用空字符补充不足的字符数,而varchar2则不会。当然运行效率上char占优。
9、这个太长,懒得打了。
⑹ 数据库范式习题
下面是关于oracle的题目:===========================1. 解释冷备份和热备份的不同点以及各自的优点
解答:热备份针对归档模式的数据库,在数据库仍旧处于工作状态时进行备份。而冷备份指在数据库关闭后,进行备份,适用于所有模式的数据库。热备份的优点在于当备份时,数据库仍旧可以被使用并且可以将数据库恢复到任意一个时间点。冷备份的优点在于它的备份和恢复操作相当简单,并且由于冷备份的数据库可以工作在非归档模式下,数据库性能会比归档模式稍好。(因为不必将archive log写入硬盘) 2. 你必须利用备份恢复数据库,但是你没有控制文件,该如何解决问题呢?
解答:重建控制文件,用带backup control file 子句的recover 命令恢复数据库。 3. 如何转换init.ora到spfile?解答:使用create spfile from pfile 命令. 4. 解释data block , extent 和 segment的区别(这里建议用英文术语)
解答:data block是数据库中最小的逻辑存储单元。当数据库的对象需要更多的物理存储空间时,连续的data block就组成了extent . 一个数据库对象拥有的所有extents被称为该对象的segment. 5. 给出两个检查表结构的方法
解答:1.DESCRIBE命令
2.DBMS_METADATA.GET_DDL 包 6. 怎样查看数据库引擎的报错
解答:alert log. 7. 比较truncate和delete 命令
解答:两者都可以用来删除表中所有的记录。区别在于:truncate是DDL操作,它移动HWK,不需要 rollback segment .而Delete是DML操作, 需要rollback segment 且花费较长时间. 8. 使用索引的理由
解答:快速访问表中的data block 9. 给出在STAR SCHEMA中的两种表及它们分别含有的数据
解答:Fact tables 和dimension tables. fact table 包含大量的主要的信息而 dimension tables 存放对fact table 某些属性描述的信息 10. FACT Table上需要建立何种索引?
解答:位图索引 (bitmap index) 11. 给出两种相关约束?
解答:主键和外键 12. 如何在不影响子表的前提下,重建一个母表
解答:子表的外键强制实效,重建母表,激活外键 13. 解释归档和非归档模式之间的不同和它们各自的优缺点
解答:归档模式是指你可以备份所有的数据库 transactions并恢复到任意一个时间点。非归档模式则相反,不能恢复到任意一个时间点。但是非归档模式可以带来数据库性能上的少许提高. 14. 如何建立一个备份控制文件?
解答:Alter database backup control file to trace. 15. 给出数据库正常启动所经历的几种状态 ?
解答:STARTUP NOMOUNT 数据库实例启动
STARTUP MOUNT 数据库装载
STARTUP OPEN 数据库打开 16. 哪个column可以用来区别V$视图和GV$视图?
解答: INST_ID 指明集群环境中具体的 某个instance 。 17. 如何生成explain plan?
解答:运行utlxplan.sql. 建立plan 表
针对特定SQL语句,使用 explain plan set statement_id = 'tst1' into plan_table
运行utlxplp.sql 或 utlxpls.sql察看explain plan 18. 如何增加buffer cache的命中率?
解答:在数据库较繁忙时,适用buffer cache advisory 工具,查询v$db_cache_advice . 如果有必要更改,可以使用 alter system set db_cache_size 命令 19. ORA-01555的应对方法?
解答:具体的出错信息是snapshot too old within rollback seg , 通常可以通过增大rollback seg来解决问题。当然也需要察看一下具体造成错误的SQL文本 20. 解释$ORACLE_HOME和$ORACLE_BASE的区别?
解答:ORACLE_BASE是oracle的根目录,ORACLE_HOME是oracle产品的目录。
21. 如何判断数据库的时区?
解答:SELECT DBTIMEZONE FROM DUAL;22. 解释GLOBAL_NAMES设为TRUE的用途
解答:GLOBAL_NAMES指明联接数据库的方式。如果这个参数设置为TRUE,在建立数据库链接时就必须用相同的名字连结远程数据库23。如何加密PL/SQL程序?
解答:WRAP24. 解释FUNCTION,PROCEDURE和PACKAGE区别
解答:function 和procere是PL/SQL代码的集合,通常为了完成一个任务。procere 不需要返回任何值而function将返回一个值在另一方面,Package是为了完成一个商业功能的一组function和proceudre的集合25. 解释TABLE Function的用途
解答:TABLE Function是通过PL/SQL逻辑返回一组纪录,用于普通的表/视图。他们也用于pipeline和ETL过程。26. 举出3种可以收集three advisory statistics
解答:Buffer Cache Advice, Segment Level Statistics, Timed Statistics27. Audit trace 存放在哪个oracle目录结构中?
解答:unix $ORACLE_HOME/rdbms/audit Windows the event viewer28. 解释materialized views的作用
解答:Materialized views 用于减少那些汇总,集合和分组的信息的集合数量。它们通常适合于数据仓库和DSS系统。29. 当用户进程出错,哪个后台进程负责清理它
解答: PMON30. 哪个后台进程刷新materialized views?
解答:The Job Queue Processes.31. 如何判断哪个session正在连结以及它们等待的资源?
解答:V$SESSION / V$SESSION_WAIT32. 描述什么是 redo logs
解答:Redo Logs 是用于存放数据库数据改动状况的物理和逻辑结构。可以用来修复数据库.
33. 如何进行强制LOG SWITCH?
解答:ALTER SYSTEM SWITCH LOGFILE;34. 举出两个判断DDL改动的方法?
解答:你可以使用 Logminer 或 Streams35. Coalescing做了什么?
解答:Coalescing针对于字典管理的tablespace进行碎片整理,将临近的小extents合并成单个的大extent.36. TEMPORARY tablespace和PERMANENT tablespace 的区别是?
解答:A temporary tablespace 用于临时对象例如排序结构而 permanent tablespaces用来存储那些'真实'的对象(例如表,回滚段等)37. 创建数据库时自动建立的tablespace名称?
解答:SYSTEM tablespace.38. 创建用户时,需要赋予新用户什么权限才能使它联上数据库。
解答:CONNECT39. 如何在tablespace里增加数据文件?
解答:ALTER TABLESPACE <tablespace_name> ADD DATAFILE <datafile_name> SIZE <size>40. 如何变动数据文件的大小?
解答:ALTER DATABASE DATAFILE <datafile_name> RESIZE <new_size>;41. 哪个VIEW用来检查数据文件的大小?
解答: DBA_DATA_FILES42. 哪个VIEW用来判断tablespace的剩余空间
解答:DBA_FREE_SPACE43. 如何判断谁往表里增加了一条纪录?
解答:auditing 44. 如何重构索引?
解答: ALTER INDEX <index_name> REBUILD;45. 解释什么是Partitioning(分区)以及它的优点。
解答:Partition将大表和索引分割成更小,易于管理的分区。46. 你刚刚编译了一个PL/SQL Package但是有错误报道,如何显示出错信息?
解答:SHOW ERRORS47. 如何搜集表的各种状态数据?
解答: ANALYZE
The ANALYZE command.48. 如何启动SESSION级别的TRACE
解答: DBMS_SESSION.SET_SQL_TRACE
ALTER SESSION SET SQL_TRACE = TRUE;49. IMPORT和SQL*LOADER 这2个工具的不同点
解答:这两个ORACLE工具都是用来将数据导入数据库的。
区别是:IMPORT工具只能处理由另一个ORACLE工具EXPORT生成
的数据。而SQL*LOADER可以导入不同的ASCII格式的数据源50。用于网络连接的2个文件?
解答: TNSNAMES.ORA and SQLNET.ORA=======================================================================
⑺ oracle数据库题,求答案
答案如下,正确为T,错误为F
1、 oracle数据库系统中, 启动数据库的第一步是启动一个数据库实例。 ( T ) 2、Oracle服务器端的监听程序是驻留在服务器上的单独进程,专门负责响应客 户机的连接请求。( F) 3、 oracle数据库中实例和数据库是一一对应的 (非ORACLE并行服务, 非集群) 。 ( T) 4、系统全局区SGA 是针对某一服务器进程而保留的内存区域,它是不可以共享 的。( F ) 5、数据库字典视图ALL_***视图只包含当前用户拥有的数据库对象信息。 ( F ) 8、数据字典中的内容都被保存在SYSTEM表空间中。( T ) 9、HAVING后面的条件中可以有聚集函数,比如SUM(),AVG()等, WHERE 后面的 条件中也可以有聚集函数。( F ) 10、"上海西北京" 可以通过like ‘%上海_’查出来。( F
)
11、 表空间是oracle 最大的逻辑组成部分。Oracle数据库由一个或多个表空间 组成。 一个表空间由一个或多个数据文件组成,但一个数据文件只能属于一个表 空间。( T ) 12、表空间分为永久表空间和临时表空间两种类型。( T ) 13、truncate是DDL操作,不能 rollback。( T ) 14、 如果需要向表中插入一批已经存在的数据, 可以在INSERT语句中使用WHERE 语句。( F ) 15、Oracle数据库中字符串和日期必须使用双引号标识。( F ) 16、Oracle数据库中字符串数据是区分大小写的。( T )
17、Oracle数据库中可以对约束进行禁用,禁用约束可以在执行一些特殊操作 时候保证操作能正常进行。( F )
18、为了节省存储空间,定义表时应该将可能包含NULL值的字段放在字段列表 的末尾。( T ) 20、在连接操作中,如果左表和右表中不满足连接条件的数据都出现在结果中, 那么这种连接是全外连接。( T ) 21、自然连接是根据两个表中同名的列而进行连接的,当列不同名时,自然连接 将失去意义。( T ) 23、PL/SQL代码块声明区可有可无。( T ) 24、 隐式游标与显式游标的不同在于显式游标仅仅访问一行, 隐式的可以访问多
行。( F )
25、隐式游标由PL/SQL维护,当执行查询时自动打开和关闭。( T ) 26、显式游标在程序中显式定义、打开、关闭,游标有一个名字。( T )
27、隐式游标的游标属性前缀是SQL。( T ) 28、显式游标的游标属性的前缀是游标名。( T ) 29、隐式游标的属性%ISOPEN总是为FALSE。(
T ) 30、显式游标的%ISOPEN根据游标的状态确定值(
F )
31、隐式游标的SELECT语句带有INTO子串,只有一行数据被处理。( T ) 32、 显式游标可以处理多行数据, 在程序中设置循环, 取出每一行数据。 ( T
)
34、可以在PL/SQL中使用GOTO语句使运行流程进行跳转。( F )
35、因为存储过程不返回值,使用时只能单独调用;而函数却能出现在能放置表 达式的任何位置。( Y )
查看页面:http://wenku..com/view/d64574cd8bd63186bcebbc8c.html