易截截图软件、单文件、免安装、纯绿色、仅160KB

学习《Oracle 9i10g编程艺术》的笔记 (三)

 1.多版本:读一致查询  非阻塞查询
Oracle 采用了一种
多版本、读一致(read-consistent)的并发模型。再次说明,我们将在第7 章更详细地介绍有关的技术。
不过,实质上讲,Oracle 利用这种机制提供了以下特性:
读一致查询:对于一个时间点(point in time),查询会产生一致的结果。
非阻塞查询:查询不会被写入器阻塞,但在其他数据库中可能不是这样。
Oracle 数据库中有两个非常重要的概念。多版本(multi-versioning)一词实质上指Oracle 能够从
数据库同时物化多个版本的数据。如果你理解了多版本如何工作,就会知道能从数据库得到什么。在进一
步深入讨论Oracle 如何实现多版本之前,下面用我认为最简单的一个方法来演示Oracle 中的多版本:
( p_resource_name, p_start_time, p_end_time );
end schedule_resources;
ops$tkyte@ORA10G> create table t
2 as
3 select *
4 from all_users;
Table created.
ops$tkyte@ORA10G> variable x refcursor
ops$tkyte@ORA10G> begin
2 open :x for select * from t;
3 end;
4 /
PL/SQL procedure successfully completed.
ops$tkyte@ORA10G> delete from t;
28 rows deleted.
ops$tkyte@ORA10G> commit;
Commit complete.
ops$tkyte@ORA10G> print x
USERNAME USER_ID CREATED
------------------------------ -------------- ---------------
BIG_TABLE 411 14-NOV-04
OPS$TKYTE 410 14-NOV-04
DIY 69 26-SEP-04
...
OUTLN 11 21-JAN-04
SYSTEM 5 21-JAN-04
在前面的例子中,我创建了一个测试表T,并把ALL_USERS 表的一些数据加载到这个表中。然后在这
个表上打开一个游标。在此没有从该游标获取数据,只是打开游标而已。
注意要记住,Oracle 并不“回答”这个查询。打开游标时,Oracle 不复制任何数据,你可以想想看,
即使一个表有十亿条记录,是不是也能很快就打开游标?没错,游标会立即打开,它会边行进边
回答查询。换句话说,只是在你获取数据时它才从表中读数据。
在同一个会话中(或者也可以在另一个会话中;这同样能很好地工作),再从该表删除所有数据。甚
至用COMMIT 提交了删除所做的工作。记录行都没有了,但是真的没有了吗?实际上,还是可以通过游标获
取到数据。OPEN 命令返回的结果集在打开的那一刻(时间点)就已经确定。打开时,我们根本没有碰过表
中的任何数据块,但答案已经是铁板钉钉的了


相关文档:

oracle 表空间操作

oracle表空间操作详解
  1
  2
  3作者:   来源:    更新日期:2006-01-04 
  5
  6 
  7建立表空间
  8
  9CREATE TABLESPACE data01
 10DATAFILE '/ora ......

PostgreSQL/Oracle Table

通常我們在建立 PostgreSQL/Oracle 資料庫的時候, 如果要使用 MySQL/MS-SQL identity 雷同的功能, 就是要採用 Sequence 來建立, 而為了每一個 Table 都有獨立的序號產生器, 我們會建立個別的 sequence.
例如 (PostgreSQL samp ......

oracle中如何实现给当前时间加一分钟?

 select   to_char(sysdate   +   1   /   (24   *   60),'yyyy/mm/dd   hh24:mi:ss')   from   dual
SQL>   ;  
      1     select   to_char(sysdate,   'hh:mi:ss')  
      2 &nbs ......

ORACLE插入日期数据

 oracle数据库插入日期型数据
往Oracle数据库中插入日期型数据(to_date的用法)
今天碰到了需要往Oracle数据库中插入日期型数据,要使用TO_DATE函数,在网上发现一篇写的不错的文章,摘来一起分享。
INSERT  INTO  FLOOR  VALUES  ( to_date ( '2007-12-20 18:31:34' , 'YYYY-MM-DD HH24:M ......

ORACLE启动

 
ORACLE主要由两部分组成:Instance和Database。Instance是指一组后台进程/线程和一块共享内存区域,而Database是指存储在磁盘上的一组物理文件。
ORACLE数据库的启动主要分3个步骤:
1、启动到nomount状态;
2、启动到mount状态;
3、启动到open状态。
下面分析一下启动的各个步骤:
一、启动到nomount状态
......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号