Oracle开发艺术
序
本书是ITPUB技术丛书中第一本专注于Oracle开发的书籍。长久以来,数据库后台开发一直是应用开发行业的一项核心工作,能否正确设计一个数据库的架构,并写出合理、高效的SQL,决定了一个应用的效能,也在相当大的程度上影响了项目的成败。而在表象的背后,数据库开发又远远不止表面看到的那么简单,用作者们的话来说只是冰山一角。除了SQL或PL/SQL以外,我们还可能面对算法、架构、规范等问题。作者们都曾经在各行业的第一线战斗过,长期从事数据库开发各个方面各种细节的工作,由他们去分享10多年来的心得,对于读者来说是极好的知识共享。以前ITPUB技术丛书中有许多关于数据库管理的内容,由于所提供的案例许多属于极端而难以重现,但这本书里的很多例子,读者都可以很简单地重现并且自我尝试,领会其中的精粹,这也是本书和以前DBA方面书籍的一大差异之处。
我和本书的作者们大多在ITPUB上相识了很长时间,他们都是具有丰富行业经验的专家,也非常热心。苏旭晖(newkid)和卢涛(〇〇)Oracle是开发方面的行家,记得当初我在社区里推崇Joe Celko的《SQL puzzles and Answers》一书,结果newkid很快指出这本书里的例子的很多错误或者愚笨之处,还专门给出一个帖子来指出书中的错误,让人叹服。他对技术精益求精,非常关心国内的开发社团,解决了许多网友提出的疑难的实际问题,还经常订购国内原创的技术书籍。有一次newkid君在论坛上出了一道用SQL去求解四皇后问题的题,不久〇〇就给出了答案,我才第一次知道SQL除了可以用来查询数据外,还可以有这样的用途。王保强(bq_wang)、怀晓明(lastwinner)是ITPUB中的元老级会员,bq_wang在项目管理、数据库、数据仓库、系统架构应用上很有经验,在过去几年中一直担任大型开发项目的manager,而lastwinner在应用测试和编码上的能力让人印象深刻,他是那种天生对问题有灵敏嗅觉的人,解决问题的能力非常强,并带队完成了几个大型开发项目。丁俊(dingjun123)在电信领域有多年系统架构设计和管理经验,对Oracle数据库开发很有研究,梁敬彬(wabjtam123)对数据库管理、设计、开发均有较为深入的研究,同时有着多年的电信行业相关经验和丰富的培训经验,二人在社区中积极热心帮助别人解决疑难问题,并总结了很多精华内容,得到社区大众的认可。贾书民则早在20年前就开始使用Oracle数据库,参加了多个国家级项目的设计和开发,技术功底与行业经验相当丰厚。由这么多高手呕心沥血写出来的经验之作,我相信一定能让读者读后有所裨益。
最后我要说从2004年ITPUB第一本技术图书面世以来,6年过去了,丛书也出版到第10本。2001年9月ITPUB刚刚建立的时候,会员只有一万多人,经过9年的发展,ITPUB已拥有技术板块100多个,注册会员数量超过240万,每天更新的讨论帖数以万计。感谢苏旭晖、卢涛、王保强、怀晓明、梁敬彬、丁俊、贾书民在ITPUB即将步入第10个年头的时候,创作了这本重量级的技术图书。ITPUB的发展与这样的专家、第一线技术工作者的长期支持是分不开的,真挚感谢你们对ITPUB的支持!
——ITPUB 创始人 tigerfish
ITPUB技术丛书
书名:剑破冰山:Oracle开发艺术
作者:卢涛主编,苏旭晖 丁俊 副主编,梁敬彬 王保强 怀晓明 贾书民 编著
ISBN 978-7-121-12075-6
出版日期:2011年1月
定价:69.00元
开本:16开
页码:524 页
内容简介
Oracle数据库是目前市场占有率最高的商业数据库,功能非常强大,随着Oracle管理工具的智能化,如Oracle EM提供了强大的管理和调优功能,Oracle DBA的管理工作逐渐趋于简单化。正因为如此,当前国内Oracle开发人员的岗位需求大幅度增加,投身Oracle开发的人数也日益增多。
一个好的Oracle开发人员不仅要知道一些基本语法和常见用法,还需要知道何时用、如何用、怎么避免相关误区、写出高质量的代码。本书面向有Oracle使用经验或有其他数据库使用经验的人,重点讲述利用好Oracle的特色功能进行高效开发的思路和技巧,帮助读者快速掌握中高级Oracle开发技术。
本书主要覆盖Oracle开发必备的重要知识点:数据库编程规范、Oracle开发常用工具及使用、MERGE方法、神秘的NULL和讨厌的CHAR、扩展GROUP BY、Oracle自动类型转换、Oracle分析函数、Oracle层次查询、11g R2新特性之递归WITH编程、动态SQL扩展。此外还有大量案例:Where In List问题解析,数据库设计和大数据量处理、数据审核、号段选取应用、分析SQL执行计划的关注点、Oracle开发误区探索、提升PL/SQL开发性能漫谈、管道函数的学习与实战应用、巧用锁特性避免重复启动同一程序、不可能的任务?超越Oracle等。
本书作者均有多年Oracle开发管理实战经验,他们期望以自己的经验和教训,分享分析和解决问题的方法,探讨如何用相关的技术去解决特定的需求。希望读者在看完本书后,能受到良好的启迪,进而能极大地提升自己在Oracle数据库开发方面的能力!