您的位置:首页 > 数据库 > Oracle

Oracle基础概念

2008-11-23 19:26 288 查看
一 、快照太旧:
当某一个事务回退数据大于回退段所容纳的数量时,oracle根据回退段的存储参数next进行区扩展,如果所有区的数量等于存储参数maxnextents仍不够用时,则产生"快照太旧"(Snapshot Too Old)错误。

二、系统改变号(SCN: System Change Number)

一个由系统内部强制措施的序列号。当数据更新的时候自动增加,它是维护数据的一致性和顺序恢复的重要标志。

SCN的作用:

1.记录数据修改的顺序。查询语句不会使SCN增加,修改数据时SCN会增加;

2.维护数据的一致性。当用户执行查询时,用户会自动从系统中得到一个当前SCN,在查询数据的同时,系统会检查每个数据行和它对应的SCN,只有那些不比用户的SCN大的数据行才能从数据库调整缓存中取出,而那些大于用户SCN的数据行,就应该从回退段数据文件的缓冲中取出。

3.事务提交时,Oracle将为该事务生成一个SCN,事务的SCN将写入重做日志文件中,可以作为数据库恢复时的标记。

三、同义词

同义词(synonym)是相同对象的别名。

同义词有两种类型:私有(private)和公共(public)。私有的同义词是在指定的模式中创建并且只创建者使用的模式访问。公共同义词是由public 指定的模式访问,所有数据库模式(用户)都可以访问它。

同义词拥有如下好处:节省大量的数据库空间,对不同用户的操作同一张表没有多少差别;扩展的数据库的使用范围,能够在不同的数据库用户之间实现无缝交互;同义词可以创建在不同一个数据库服务器上,通过网络实现连接。

四、数据库块(BLOCK)
ORACLE 数据库中的最小存储和处理单位

五、瓶颈(Bottleneck)
指限制系统性能的部件。

六、oracle中显式游标和隐式游标比较

在数据库中,游标是一个十分重要的概念,游标提供了一种灵活手段,可以对表中检索出的数据进行操作。就本质而言,游标实际上是一种能从包括多条数据记录的结果集中每次提取一条记录的机制。
游标由结果集和结果集中指向特定记录的游标位置组成,游标充当指针的作用。尽管游标能够遍历查询结果中的所有行,但它一次只能指向一行。
使用数据游标可以选择一组数据,可以在记录集上滚动游标,并检查游标指向的每一行数据。可以用局部变量和游标的组合来分别检查每个记录,并在转移到下一个记录之前,进行所需的任何外部操作。游标的另一个常见用途是保存查询结果,以便以后使用。游标的结果集是由select语句产生,如果处理过程需要重复使用一个记录集,那么创建一次游标而重复使用若干次,比重复查询数据库要快得多。

显式游标

在大多数时候我们在设计程序的时候都遵循下面的步骤:

   1、打开游标

   2、开始循环

   3、从游标中取值

   4、检查那一行被返回

   5、处理

   6、关闭循环

   7、关闭游标

但还有一种游标与这种不相同,这就是FOR循环,用于FOR循环的游标按照正常的声明方式声明,它的优点在于不需要显式的打开、关闭、取数据,测试数据的存在、定义存放数据的变量等等。

显式游标和隐式游标的差别
1.隐式游标
PL/SQL维护,当执行查询时自动打开和关闭
游标属性前缀是SQL
属性%ISOPEN总是FALSE
SELECT语句带有INTO子串,只有一行数据被处理

2.显式游标
在程序中显式定义/打开/关闭,游标有一个名字
游标属性的前缀是游标名
%ISOPEN根据游标的状态确定值
可以处理多行数据,有程序中设置循环,取出每一行数据;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: