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

Oracle+9i&10g编程艺术:深入数据库体系结构(读书笔记一)

2010-11-07 10:58 309 查看
第一章 开发成功的oracle应用程序

这是部oracle数据库的经典书籍,作者同时也是oracle的开发者。该书有电子版,可以去下载,只不过电子版缺少图片,但是书中图片不多,因此并无大碍。作者同时强调不同的数据库处理方式不一样,在应用开发的过程中要充分了解你使用的数据库的特性。同时也强调了在数据库迁移的过程中需要注意的一些问题。

刚看完第一章,感觉对oracle的了解深入了一些,我是一个java应用开发者,因为以前有BI的工作经验,因此对数据库的了解多了一些,也写了不少存储,触发器之类的PLSQL应用,工作的同时觉得对数据库,对oracle知之甚少,因此想多读一些书籍充实一下。

主要接受到了两个知识点。

一是oracle是读非阻塞的。在读数据的过程中是不收写锁限制的,这样的设计规则会带来应用程序并发的一个问题。如果你涉及到读数据,而且会有更改数据的操作,那这时候在读数据的过程中应该加一个行级锁,类似select * from t for update操作。作者用OA系统中会议资源预约的应用详细阐述了这个问题。由于读是非阻塞的,那读数据的同时,也是在写数据的。那如何保证数据的完整性,这就是涉及到了oracle的另一个属性。

二是oracle是多版本的。多版本的意思类似svn,cvs等一些版本工具的版本管理工作原理。具体意思是讲,oracle会纪录更改的操作,并且有对应的版本号。而且这个版本号是和时间点关联的。意思是讲,你在莫一个时刻做一个类似sum的运算,同时数据库也在进行写操作,这时候会更改你sum分项的值,你可能会担心你的sum值并不正确。其实没必要担心,oracle的多版本很好的解决了这个问题。你在进行sum操作提交的时候,oracle会根据当前的时刻找到对应的版本号,然后在这个时刻的版本上做sum操作,因此保持了数据的完整性。多版本的设计让我想到了闪回机制,此是后话。以后在详细概述。

后续我读一章,会添加一章的读书笔记。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐