a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 78|回复: 0

[考试试题] Oracle企业面试题(四)

[复制链接]
发表于 2012-8-4 14:01:27 | 显示全部楼层 |阅读模式
十六、两段锁协议规定所有事务要遵守哪些规则?(中等)
- b3 e* F# X' }: W& M5 U+ h& q! A(1) 在对任何数据进行读写操作之前,事务首先要获得对该数据的锁定。9 n; e$ L! Y0 b" I
(2) 在释放一个锁之后,事务不再获得任何其它锁定。  R" [% O2 O+ R. g& D% v
所谓两段,就是每个事务分成前后两个阶段:增生阶段和收缩阶段。' G+ g- C5 G7 t& q2 |" i
增生阶段:也称为扩展阶段或申请锁阶段。在增生阶段中,事务可申请锁,但不能解除任何已取得的锁。5 V* o+ o: y. P4 {: B
收缩阶段:也称为释放锁阶段。在收缩阶段中,事务可释放锁,但是不能申请新锁。! h5 g7 G1 {7 C1 b
十七、请叙述表分区的概念及其优点。(容易)6 c8 X% w7 H( D$ H& X, `$ ~
    表分区允许用户把一个表中的所有行分为几个部分,并将这些部分存储在不同的位置。被分区的表称为分区表,分成的每一部分称为分区。0 t" {; W4 b% b9 m& S  _$ l0 S
    对于包含大量数据的表来说,分区很有用。表分区有以下优点:
. C# R" g6 x) a  _5 M" ?$ w1 Z    (1)改善表的查询性能,在对表进行分区后,用户执行SQL查询时可以只访问表中的特定分区而非整个表。
; d  C  N- {0 L$ o! F) P(2)表更容易管理,因为分区表的数据存储在多个部分中,按分区加载和删除数据比在表中加载和删除更容易。
: W  k  e. D! J3 I9 W* K(3)便于备份和恢复,可以独立地备份和恢复每个分区。
+ Q3 T7 F1 z; `. k& }% A: [$ N(4)提高数据安全性,将不同的分区分布在不同的磁盘,可以减少所有分区的数据同时损坏的可能性。5 f8 G8 t- ?& Y, K
十八、Oracle提供的表分区有哪几种?请叙述他们的含义。(容易)$ f3 K% ], R  B+ E- W, N; c" x, [
     Oracle提供的表分区有:
& U" \! }! ]0 a) ^% A/ D( n(1)范围分区:范围分区根据表的某个列或一组列的值范围,决定将该数据存储在哪个分区上。- j" Z$ O  [' E
(2)散列分区:散列分区通过在分区键值上执行一个散列函数来决定数据的物理位置。
2 v) Q& i8 [( \3 \. T. w(3)复合分区:复合分区是范围分区和散列分区的结合。在创建复合分区时,先根据范围对数据进行分区,然后在这些分区内创建散列子分区。
1 C" k5 S# z2 @: U# z5 h  s(4)列表分区:列表分区允许用户明确地控制行到分区的映射。列表分区允许按自然方式对无序和不相关的数据集进行分组和组织。
$ j# e2 Q  f* ^! K/ N6 |* D' j9 }十九、请阐述同议词的作用。你认为什么情况下要使用同义词?(中等)
& x3 z- X% N5 ]1 F% e" y( B    同义词是数据库对象的一个别名。4 E# n9 M; u% R, g0 U. a+ N3 S
同义词的作用有:简化SQL语句,隐藏对象的名称和所有者,为分布式数据库的远程对象提供了位置透明性,提供对对象的公共访问。
2 J8 y& G1 ?: A* s# T- o当一个用户访问另一个用户的数据库对象时,可以通过使用同义词,而无需指定模式前缀,就可以实现此用户对其它模式的数据库对象的访问。这些对象可以是表、视图、序列、过程、函数和程序包,甚至是其它同义词。: z$ L, B) e6 s% W
二十、什么是序列?在表中如何使用序列?(容易)
+ I0 C8 \9 t8 [9 U; H序列是用来生成唯一、连续的整数的数据库对象。
  c$ V2 n. \4 `$ ]! X在表中使用序列:
% D6 H' H# h: |" V7 \5 \1 o(1)创建序列:( t4 y" ^6 c5 r4 x/ [3 q5 ^, h
CREATE SEQUENCE sequence_name [START WITH startnum] [INCREMENT BY step];
; _6 `1 i6 H, `1 ]# }1 i(2)创建表时使用序列:' X: P: }8 ?4 I8 {3 e* p
CREATE TABLE table_name ( uid smallint not null, ...);
# k0 v' S3 p4 V# m. |" k(3)插入数据时使用序列:8 W6 |$ q6 l. p1 x
INSERT INTO table_name VALUES(sequence_name.NEXTVAL, ...);
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Woexam.Com ( 湘ICP备18023104号 )

GMT+8, 2024-5-1 21:20 , Processed in 0.232847 second(s), 21 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表