Oracle笔试题

发布 2024-04-17 03:20:11 阅读 2631

一、oracle实例与数据库有什么区别 (容易)

oracle实例 = 进程 + 进程所使用的内存(sga)

实例是一个临时性的东西,你也可以认为它代表了数据库某一时刻的状态!

数据库 = 重做文件 + 控制文件 + 数据文件 + 临时文件。

数据库是永久的,是一个文件的集合。

oracle实例和数据库之间的关系。

1.临时性和永久性。

2.实例可以在没有数据文件的情况下单独启动 startup nomount , 通常没什么意义。

3.一个实例在其生存期内只能装载(alter database mount)和打开(alter database open)一个数据库。

4.一个数据库可被许多实例同时装载和打开(即rac),rac环境中实例的作用能够得到充分的体现!

二、sga主要有那些部分,主要作用是什么 (容易)

数据库信息存储在sga中,并由多个数据库进程共享。sga有多个内存结构,按其作用不同,可分为共享池、数据缓冲区及日志缓冲区。

共享池是对sql、pl/sql程序进行语法分析、编译、执行的内存区域。如果共享池太小,则运行sql、pl/sql程序所用的时间就会较长,影响数据库的性能。

数据缓冲区用于存储从磁盘数据文件中读入的数据,所有用户共享。数据缓冲区的大小对数据库的读取速度有直接的影响。

日志数据首先产生于日志缓冲区,当日志缓冲区的日志数据达到一定数量时,由日志写入进程lgwr将日志数据写入日志文件中。

三、oracle进程主要有哪些,作用是什么 (容易)

oracle进程主要有用户进程、服务器进程和后台进程。

用户进程是一个需要与oracle服务器进行交互的程序。

服务器进程是一个用于处理连接到该实例的用户进程的请求。服务器进程和用户进程通信并为所连接的用户请求服务。

后台进程主要作用是使系统性能最好和协调多个用户。其主要包括进程监控进程(pmon,在用户进程出现故障时执行进程恢复)、系统监控进程(smon,在实例启动时执行实例恢复、整理数据文件的自由空间、释放不再使用的临时段)、数据写入进程(dbwr,主要负责将数据缓冲区内的数据写入数据文件)、日志写入进程(lgwr,主要负责将日志数据区内的数据写入日志文件)及检查点进程(ckpt,其作用是保证所有修改过的数据库缓冲区都被写入数据库文件)。

四、数据描述有通常有哪几种形式 (中等)

数据描述有物理描述和逻辑描述两种形式。

物理数据描述指数据在存储设备上的存储方式,物理数据是实际存放在存储设备上的数据。

逻辑数据描述指程序员或用户用以操作的数据形式,是抽象的概念化数据。

五、和排序相关的内存在8i和9i分别怎样调整,临时表空间的作用是什么(中等)

oracle 8i中sort_area_size/sort_area_retained_size决定了排序所需要的内存;如果排序操作不能在sort_area_size中完成,就会用到temp表空间。

oracle 9i中如果workarea_size_policy=auto时,排序在pga内进行,通常pga_aggregate_target的1/20可以用来进行disk sort;如果workarea_size_policy=manual时,排序需要的内存由sort_area_size决定。

在执行order by/group by/distinct/union/create index/index rebuild/minus等操作时,如果在pga或sort_area_size中不能完成,排序将在临时表空间进行(disk sort)。

临时表空间主要作用就是完成系统中的disk sort。

六、oracle有哪些用户其默认口令和权限是什么 (容易)

当新建一个数据库时,oracle将创建几个默认数据库用户模式,如sys、system和scott。

sys用户是oracle中的超级用户,它的默认口令是change_on_install。数据库中数据字典的所有表和视图都存储在sys模式中。

system用户也有管理员权限,它的默认口令是manager。该用户创建显示管理信息的表和视图,以及oracle工具所使用的内部表和视图。

scott用户是一个示范帐户,其默认口令为tiger,此帐户包含4个示范表。

七、怎样查看哪些用户拥有sysdba、sysoper权限 (中等)

conn sys/change_on_install

select * from v_$pwfile_users;

八、请简述sql语言的组成、作用及其常用命令。(容易)

sql语言分为数据定义语言(ddl)、数据操纵语言(dml)和数据控制语言(dcl)。

ddl用于定义sql模式、基本表、视图和索引的创建和撤消操作。常用命令有:create、alter、drop。

dml用于数据的插入、修改、删除和查询。常用命令有:insert、update、delete、select。

dcl用于对基本表的授权、完整性规则的描述和事务的控制等。常用的命令有:grant、revoke、commit、s**epoint、rollback。

九、数据库正常启动所经历的状态有哪几种 (中等)

startup nomount 数据库实例启动。

startup mount 数据库装载。

startup open 数据库打开。

十、varchar2,char两种数据类型有什么区别,如果数据表某字段输入 abc 后储存,该字段数据类型分别为varchar2(10),char(10)存储字节长度以及内容有何区别 (中等)

varchar2数据类型与char数据类型的区别:

1、char数据类型的列长度是1-2000个字节,如果未指明大小,则默认其大小为1个字节。varchar2数据类型的列长度是1-4000个字节,定义该数据类型时,应指定其大小。

2、char数据类型如果用户输入的值小于指定的长度,数据库用空格填充至固定长度。而对于varchar2数据类型,如果用户输入的值小于指定的长度,则其长度为用户输入的值长度。

如果数据表某字段输入“abc”后储存,该字段数据类型为varchar2(10),其存储字节长度为3,内容为“abc”。

如果数据表某字段输入“abc”后储存,该字段数据类型为char(10),其存储字节长度为10,内容为“abc”(七个空格)。

十。一、已知客户表a(id name address) 登陆流水表b(id time) 购物流水表c(id time productid productnum)

1)求每个客户的最新登陆时间time,姓名name,客户id

2)查最新登陆并且已经购买商品的客户id,name,登陆的时间time(一条sql语句) (难)

1)求每个客户的最新登陆时间time,姓名name,客户id

select as time

from a left join (select id,max(time) as time from b group by id) d

on = 2) 查最新登陆并且已经购买商品的客户id,name,登陆的时间time

select as time

from a,(select id,max(time) as time from b group by id) d

where =

and exists (select * from c where id =

十。二、已知学生表student中有班级classid,学号id,成绩grade

1)计算各个班的平均成绩。

2)查找比该班平均成绩高的学生的班级classid,学号id,成绩grade (难)

1)计算各个班的平均成绩。

select classid,**g(grade) from student group by classid;

2) 查找比该班平均成绩高的学生的班级classid,学号id,成绩grade

select classid, id, grade

from (select classid,id,grade,**g(grade) over (partition by classid order by classid, id) as **g_grade

from student )

where grade > **g_grade;

十。三、绑定变量是什么绑定变量有什么优缺点 (中等)

绑定变量是相对文本变量来讲的,所谓文本变量是指在sql直接书写查询条件,这样的sql在不同条件下需要反复解析,绑定变量是指使用变量来代替直接书写条件,查询bind value在运行时传递,然后绑定执行。优点是减少硬解析,降低cpu的争用,节省shared_pool ;缺点是不能使用histogram,sql优化比较困难。

十。四、请叙述事务的概念及其性质。(难)

事务是一个操作序列。这些操作要么都做,要么都不做,是一个不可分割的工作单位,是数据库环境中的逻辑工作单位,相当于操作系统环境中的“进程”概念。事务以begin transaction 语句开始,以commit语句或rollback语句结束。

事务必须有四个性质:

1) 原子性:一个事务中所有对数据库操作是一个不可分割的操作序列。事务要么完事地被全部执行,要么什么也不做。

2) 一致性:一个事务独立执行的结果将保证数据库的一致性,即数据不会因事务的执行而遭受破坏。

3) 隔离性:在并发事务被执行时,系统应保证与这些事务先后单独执行时的结果一样,此时达到了隔离性要求。

4) 持久性:一个事务一旦完成全部操作后,它对数据库的所有更新应永久地反映在数据库中。

十。五、请叙述锁定的概念及其优点。(中等)

锁定是数据库用来控制共享资源并发访问的机制。

锁定的优点:

1) 一致性:一次只允许一个用户修改数据,从而提供统一的数据。

2) 完整性:向所有用户提供正确的数据。如果一个用户进行了更改并保存,那么所做的更改反映给所有用户。

3) 并发性:允许多个用户访问同一数据。

十。六、两段锁协议规定所有事务要遵守哪些规则 (中等)

1) 在对任何数据进行读写操作之前,事务首先要获得对该数据的锁定。

2) 在释放一个锁之后,事务不再获得任何其它锁定。

Oracle笔试题

基础题目 1.比较truncate和delete 命令 1 在功能上,truncate是清空一个表的内容,它相当于delete from table name。2 delete是dml操作,truncate是ddl操作 因此,用delete删除整个表的数据时,会产生大量的roolback,占用很多的...

Oracle测试试题

时间 120分钟总分 100分 一 选择题 2分 20 题40分 1 下面哪一个不是数据库屋物理存储结构中的对象。a.数据文件b.联机重做日志文件 c.控制文件d.表空间。2 在oracle服务器启动时,下面哪种文件不是必须的 a 数据文件 b 控制文件c 日志文件 d 归档日志文件。3 你要在or...

SQL笔试题笔试题

家庭住址,联系 create table stu 学号int 姓名varchar 8 年龄int,性别varchar 4 家庭地址varchar 50 联系 int 历varchar 6 3 修改学生表的结构,删除一列信息,家庭住址alter table stu drop column家庭地址4 向...