ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 舞动DB2系列之应用开发篇闪亮登场!

舞动DB2系列之应用开发篇闪亮登场!

原创 Linux操作系统 作者:王飞鹏2011 时间:2011-12-04 15:32:42 0 删除 编辑

舞动DB2系列丛书简介:

舞动DB2系列丛书是王飞鹏等人编写的数据库系列著作,包括:

设计优化篇---DB2设计与性能优化---原理、方法与实践》

应用开发篇---《从OracleDB2开发---从容转身》

运维篇---《运筹帷幄DB2

 

舞动DB2应用开发篇简介:

从Oracle到DB2开发---从容转身

旗帜:

本书是IBM原厂数据库应用开发专著!

首次将Oracle与DB2的对比贯穿全书

提供丰富的代码实战案例。

数据库应用开发者的首选之作

IBM信息管理开发部总经理朱辉推荐序

IBM DB2开发部资深经理孙冰江推荐序

IBM信息管理首席架构师陈奇博士任技术顾问

网上购买地址:http://product.china-pub.com/198827

内容简介

  《舞动db2系列:从oracle到db2开发—从容转身》是“舞动db2”系列的第二本,分为三大部分,共8章。第一部分从开发者遇到的问题进行分析,提出在oracle兼容模式下开发数据应用的新思路,并讲述了从oracle迁移到db2的方法、工具及案例。第二部分讲述了db2开发工具方面的知识,以及如何更有效地开发存储过程、用户自定义函数和触发器。第三部分讲述了开发者在java ee和.net架构下开发数据应用的最佳实践。同时,在附录a中,针对sql pl与pl/sql做了集中对比,对快速掌握两者异同是大有裨益的。
  《舞动db2系列:从oracle到db2开发—从容转身》目标读者群主要针对以下人员:从oracle向db2转型的技术人员;db2应用开发工程师;oracle应用开发工程师;数据库应用架构师;学习db2数据库开发技术的高校学生或者从事相关课程教学的教师。
 

目录

《舞动db2系列:从oracle到db2开发—从容转身》
第1章 我看db2应用开发 1
1.1 老张的故事 2
1.1.1 从选型谈起 2
1.1.2 从oracle到db2转身的技术挑战 8
1.2 开发者的传统选择 9
1.2.1 从这里开始:开发技术分类 10
1.2.2 你需要知道的:传统解决办法 10
1.2.3 转身之顽症:暴力拆迁 11
1.3 db2应用开发:从容转身 12
1.3.1 新思路:oracle兼容特性 13
1.3.2 服务器端开发 15
1.3.3 客户端开发 16
1.3.4 开发工具选择 17
1.3.5 开发者转型的最佳实践 18
1.4 读者使用本书的方法 19
1.5 精彩絮言:避暑山庄中发生的高铁一幕 20
1.6 小结 22
第2章 当oracle开发者遇到db2 23
2.1 db2易容术:向oracle兼容 24
.2.2 数据库对象:db2 vs oracle 27
2.2.1 临时表:db2更胜一筹 27
2.2.2 索引:难分伯仲 29
2.2.3 视图:势均力敌 33
2.2.4 约束:oracle依灵活棋高一着 34
2.2.5 序列:db2凭细腻一展威风 35
2.2.6 分区特性:db2更有妙招 36
2.2.7 数据库联邦:db2支持的数据源以多居上 40
2.2.8 数据字典视图:oracle借方便傲视对手 42
2.3 你必须知道的:db2命令行工具 43
2.3.1 db2 clp 44
2.3.2 db2 clpplus 45
2.4 从oracle迁移到db2 47
2.4.1 迁移工具:meet和idmt 48
2.4.2 迁移计划 51
2.4.3 迁移步骤 53
2.4.4 风险控制 53
2.5 精彩絮言:真功夫 54
2.6 小结 55
第3章 db2应用开发工具大观 56
3.1 全能选手,ibm optim data studio 57
3.1.1 data studio亮相 58
3.1.2 版本一比高低 59
3.1.3 一切从“连接”开始 60
3.1.4 详解数据库管理功能 62
3.1.5 编写脚本,地主老爷的碗——难端 65
3.1.6 玩转存储过程和udf 70
3.1.7 data studio评分 73
3.2 超级大管家,toad 74
3.2.1 初识toad for db2 74
3.2.2 toad起步,从“连接”开始 75
3.2.3 数据库管家的管理功能 76
3.2.4 轻车熟路的sql脚本 78
3.2.5 存储过程靠“向导” 79
3.2.6 toad评分 83
3.3 部落酋长,microsoft visual studio 83
3.3.1 双剑合璧,visual studio + ibm数据库插件 84
3.3.2 db2“瘦”管理 85
3.3.3 开发存储过程和udf 87
3.3.4 大展身手,开发客户端应用 90
3.3.5 visual studio评分 90
3.4 精彩絮言:从未离开的一种生活——选择 91
3.5 小结 92
第4章 sql pl开发db2服务器端应用 94
4.1 我看服务器端应用开发 95
4.1.1 离db2引擎越近的代码跑得越快 95
4.1.2 从内到外的改变 96
4.1.3 久经考验的sql pl 97
4.2 数据类型:db2 vs oracle 98
4.2.1 基本的数据类型大比拼 98
4.2.2 变量声明与赋值 100
4.2.3 oracle的%type属性?你有我也有 102
4.2.4 行类型,不就是oracle的记录类型吗 105
4.2.5 数组,居家旅行必备 107
4.2.6 关联数组 109
4.3 sql pl与存储过程 111
4.3.1 解剖sql pl存储过程 111
4.3.2 复合语句,oracle俗称“块” 114
4.3.3 条件分支中的if和case 116
4.3.4 四种循环与跳转 117
4.3.5 让游标和结果集为你工作 121
4.3.6 无所不能的游标变量 127
4.3.7 动态sql vs静态sql 130
4.3.8 条件处理,让你的程序更健壮 134
4.4 sql pl函数与触发器 138
4.4.1 内联sql pl与编译型sql pl 138
4.4.2 udf的本来面目 139
4.4.3 编译型sql pl函数 143
4.4.3 触发器的是是非非 144
4.5 高级主题探讨 148
4.5.1 db2的模块vs oracle的程序包 148
4.5.2 存储过程的递归 152
4.5.3 purexml,不一样的编程体验 155
4.5.4 洞悉权限管理,为安全而努力 159
4.5.5 存储过程性能优化的五条黄金法则 162
4.6 精彩絮言:一游香江解难题 167
4.7 小结 168
第5章 pl/sql开发db2服务器端应用 170
5.1 pl/sql, 从oracle到db2“从容转身”的支点 171
5.1.1 兼容oracle,支持pl/sql,这是一场革命 171
5.1.2 在db2中玩oracle的pl/sql?你的地盘你做主 171
5.1.3 不要忘了设置db2的oracle兼容性 172
5.1.4 应用开发场景一瞥:某大型电子商务系统 173
5.2 用类型精确控制你的数据 175
5.2.1 兼容oracle——从数据类型开始 175
5.2.2 变量声明与赋值语句 177
5.2.3 oracle的类型隐式转换,是方便还是隐患 179
5.2.4 %type属性——类型控制的最佳武器 180
5.2.5 用%rowtype属性更进一步 181
5.2.6 甚至可以自定义记录类型 183
5.2.7 用数组类型组织你的数据 184
5.2.8 强大的关联数组 186
5.3 从基本语句看真功夫 187
5.3.1 块与匿名块 187
5.3.2 null语句的妙用 188
5.3.3 oracle特有的sql?这一说法已成历史 189
5.3.4 bulk实现批处理,很好很强大 190
5.3.5 用returning into捕获增删改的值 191
5.3.6 sql属性告诉你sql语句的影响力 192
5.3.7 动态sql语句的是与非 193
5.4 老话新谈——程序流程控制 197
5.4.1 用if和case语句处理分支 197
5.4.2 你喜欢用哪一种循环 199
5.4.3 必不可少的异常处理 202
5.5 掌握游标,才掌握了数据库编程 206
5.5.1 按部就班的静态游标 206
5.5.2 无所不能的游标变量 209
5.6 完整而独立的例程世界 213
5.6.1 再回头看存储过程 213
5.6.2 用户自定义函数的真实面目 215
5.6.3 开发pl/sql触发器,当心 216
5.7 “包”,容一切 219
5.7.1 接口与实现分离的编程原则 219
5.7.2 程序包,容纳所有的接口声明 219
5.7.3 程序包主体,容纳全部实现细节 220
5.7.4 程序包的权限管理和引用 222
5.7.5 全面支持oracle的内置程序包 223
5.8 精彩絮言:候鸟小谈 224
5.9 小结 225
第6章 java存储过程 226
6.1 db2中java存储过程 227
6.1.1 左手java,右手sql 227
6.1.2 选择jdbc还是sqlj 228
6.1.3 java开发环境,不要设置错 229
6.1.4 应用开发场景一瞥:某大型电子商务系统 230
6.2 细说jdbc存储过程 232
6.2.1 开发jdbc存储过程的从容五步曲 232
6.2.2 趁热打铁讲安全控制 238
6.2.3 一个存储过程,一个java方法 240
6.2.4 输出型参数与返回结果集 241
6.2.5 jdbc编程中的三驾马车 243
6.2.6 ibm特有的存储过程编程接口 245
6.2.7 强大的java用户自定义函数 247
6.2.8 示例:jdbc存储过程实现订单处理 254
6.3 畅聊sqlj存储过程 258
6.3.1 sqlj到底是什么 258
6.3.2 开发sqlj存储过程:从五步到七步 260
6.3.3 安全机制是sqlj存储过程的杀手锏 264
6.3.4 sqlj的魅力也来自简单 265
6.3.5 sqlj的三驾新马车 266
6.3.6 示例:用sqlj存储过程实现订单处理 269
6.3.7 db2中jar文件的管理 271
6.4 java过程的“无毒”处理和“无邪”调试 272
6.4.1 消灭错误,世界清静了 272
6.4.2 调试java存储过程很难吗 274
6.5 精彩絮言:“蚝”情万丈 278
6.6 小结 279
第7章 java ee平台下开发db2 280
7.1 db2和java ee 281
7.1.1 从j2ee到java ee 281
7.1.2 准备java数据库开发环境 282
7.2 与jdbc共舞 284
7.2.1 数据库连接从drivermanager开始 285
7.2.2 更加弹性的datasource 288
7.2.3 选择连接池,拒绝手忙脚乱 290
7.2.4 三招玩转jdbc 291
7.2.5 最简单的statement 293
7.2.6 有备而来,使用“preparedstatement” 295
7.2.7 专为存储过程而来,callablestatement 296
7.2.8 大数据蕴含大智慧,lob和xml 299
7.2.9 有条不紊的事务处理 301
7.2.10 管理异常和警告,让程序更完善 302
7.3 sqlj编写数据库应用 304
7.3.1 连接数据库,sqlj自有一套 304
7.3.2 不一样的体验,sqlj执行sql语句 306
7.3.3 忙前忙后的iterator 307
7.3.4 iterator升级版,scrollable和updatable 309
7.3.5 双剑合璧,攻克存储过程 313
7.3.6 sqlj中的事务 315
7.3.7 从容应对大数据 316
7.3.8 轻松应对异常和警告 317
7.3.9 sqlj与jdbc,鱼和熊掌可以兼得 318
7.4 数据库编程中的快餐文化,持久化技术 319
7.4.1 o/r mapping,从表到对象 319
7.4.2 hibernate从配置文件开始 320
7.4.3 将表“对象化” 321
7.4.4 o/r mapping的精髓,一切尽在映射中 322
7.4.5 漫游数据只需两步 323
7.5 java程序从oracle迁到db2,easy到流泪啊 325
7.5.1 第一步,修改数据库连接 326
7.5.2 第二步,修改参数类型 326
7.5.3 第三步,修改不兼容的sql语句 327
7.6 精彩絮言:川情似火贯天地,锦味胜椒辛古今 327
7.7 小结 328
第8章 .net平台下开发db2应用程序 330
8.1 扑朔迷离的.net 331
8.1.1 通向数据库的统一接口 ado.net 332
8.1.2 轻松转身db2,oracle开发者一点通 333
8.1.3 融会贯通.net开发语言 334
8.2 揭开db2 .net开发的神秘面纱 335
8.2.1 db2 vs oracle,data provider大比拼 336
8.2.2 数据库连接如何做得更好 338
8.2.3 增删改查,撑起业务流程 342
8.2.4 畅游结果集,dataset和dataadapter 346
8.2.5 玩转存储过程 351
8.2.6 轻松完成事务管理 355
8.2.7 玩转大对象 356
8.2.8 新事物有新方法,处理xml数据 360
8.3 想说爱你不容易,ole db和odbc for .net 363
8.3.1 似曾相识的数据库连接 363
8.3.2 大同小异的数据库操作 365
8.3.3 ole db.net的禁区 365
8.3.4 odbc.net的禁区 366
8.3.5 如何选择data provider 367
8.4 visual studio快速开发db2应用程序 368
8.4.1 三招拿下应用开发 368
8.4.2 黄金组合搞定数据获取 373
8.4.3 从容地操纵数据 374
8.5 精彩絮言:从容转身,第二弹 378
8.6 小结 379
附录a sql pl与pl/sql比较 380
附录b 缩略语释义 395
后记 403
参考文献 405

前言

  舞动DB2前传
  缘起
  在IBM百年华诞这一年,有IT媒体给我贴上了多个标签:有人说王飞鹏是“DB2第一高手”,有人说在数据库领域,王飞鹏是当今最活跃、最富个性的技术领袖。看来,随着“舞动DB2”系列的陆续上市,今后还会给我贴上更多的标签。无论如何,我想有必要把我编写这个系列的使命感和推动力写出来,那么就先从我的经历谈起吧。
  这需要将时光倒流10年,从9·11事件说起。那一年,我读大四,正逢大批海归学成归国。我与两位海归创立了宝华研究社,我们研究的题目不是反恐,而是在美国遭到重创之际,中国IT业如何夺得世界第一的伟大目标。不过,当时瘦得可以被风吹倒的我,没多久便意识到,所选的题目太过宏大,短期内难以实现。尽管没有成功,但是宝华研究社得以保留,这是我与志同道合之人探秘未来世界的第一次尝试。
  后来在读研期间,我通读了Linux源代码,MySQL源代码,并且在实验室的电脑上反复操练。有意思的是,我的导师当时对我的评价是“七分正,三分邪,常做出情理之中,意料之外的事”。还好,他很欣赏我在开源软件使用上的一些想法,所以鼓励我组建“开源软件学习会”,从此如鱼得水。于是我开始了第二次尝试,也在探寻如何获得号召力,没想到在短短5周内,便聚集了30多位开源软件发烧友,一起切磋技术。做了这些还不够,我又开始组织几位冒尖的同学和会员尝试进行商业运作,这在学校引起了轰动。
  “青涩”的团队成立了,一起开发电信增值业务。开始的时候,大家都建议开发测试完就收取开发服务费用,而我艰难地说服大家采取和电信服务开发商赢利分成的方式来合作。最后,大家发现这种分歧已经上升到世界观与商业眼光的层次上了。不过,大伙儿被我的坚定打动了,于是十几个“青瓜蛋子”硬着头皮跟着我走上了高风险、高收益的路。我们用3个月的时间完成了开发、测试和部署工作,随之也收获颇丰。上线后第一个月,分成8万;第二个月,分成19万;第三个月,分成31万。在赢利的分配上,我采用的方式很简单:平均分配。通过这件事,我曾总结过经验,也明白了些许道理:干大事必须要有过人的胸怀和胆识,处乱需不惊,遇事稳住神。特别重要的是,有时真理确实掌握在少数人手里。
  毕业那一年,同学们都在忙着面试找工作,而我正被乔布斯在斯坦福的演讲“Stay hungry, stay foolish”而鼓动得热血沸腾。我的山西老乡李彦宏告诉年轻人要追求创新,也让我激动不已。我脑袋里的问号不停地翻滚,哪里才是创新的天堂呢?最终我被“蓝色巨人”的诱惑吸引去了。
  我加入了IBM的DB2研发部门。那里着实是一所大学,提供了非常好的学习和工作环境。在研发实验室,除了可以和高素质的同事一起工作外,还能向加拿大的老专家学习第一手技术,提升技术素养。磨炼了一段时间,我在创新上迈出了人生的一小步:发表了数篇论文、获得了专利、出版了数据库系列著作。这些成绩让周围的朋友们眼花缭乱,不过,每当我看到同样出自山西小镇,独自闯荡大城市的李彦宏的成就,就激励我尝试在更广阔的平台上实现自己的价值。
  30多年前,IBM研究人员E.F.Codd发表了一篇划时代的论文“关系数据库理论模型”,介绍了关系数据库理论和查询语言SQL。据说,Oracle董事长Larry Allison看完后,被其内容震惊,随后敏锐意识到在这个研究基础上可以开发商用软件系统,并立刻着手推出关系数据库产品。直到1985年,IBM才发布了关系数据库DB2,而Larry Allison那时已经成为千万富翁。这个故事对我从工程师到咨询顾问的转型影响很大。
  IBM公司的咨询顾问大多数都能言善辩,这让还带有地方口音的我在加入IBM之初备感压力。有段时间我每天对着镜子苦练口才,不过那时,我还不敢想象自己真有一天能在成百上千人面前发表演讲。
  成为咨询顾问之后,我发现当今的数据库市场格局已是Oracle和DB2双雄鼎立的局面,而且竞争越来越激烈。我坚信好钢应该被用在刀刃上。为了在与Oracle的竞争中取得突破,我整天飞来飞去,始终活跃在业务第一线。我写这段文字时,人还在成都,上一周我在杭州,下周我会在北京和IBM王云院士在BAO大会上与广大DB2用户见面。
  “读万卷书,不如行万里路”,终于有一天,我明白了自己归结起来就是在做三件事:做实施、做咨询、做培训。
  第一件事:做实施。我服务的客户大多都是关系国计民生的行业领军单位,项目牵涉范围广,难度大,工期紧。曾经在华东地区某电信公司的项目中,多个实施单位之间分歧严重,进度迟缓。IBM一个兄弟实施团队无力回天,铩羽而归。紧急关头,我被派去救火。到了现场我先着手理清问题的来龙去脉,随后说服客户和IBM合作伙伴确定新的实施方案。我带领的这支队伍,经历了3周的艰苦奋战,最后力挽狂澜,取得了圆满成功。这种类似的经历只是众多案例之一,当我停下脚步回眸一看,工作中留下的脚印在不断延伸:
  华东某电信公司
  华中某移动公司
  中国某大型银行
  中央某部委
  华中某地铁公司
  中国某大型钢铁公司
  ……
.  在这些项目实施的经历中,我也学会了如何识人用人。我把人才分为三种:第一种是能自己成事的干将之才;第二种是可以带领一批人成事,具有领导力的大将之才;第三种是具有前瞻眼光,有战略高度,能审时度势、运筹帷幄的统帅之才。
  再看我做的第二件事:做咨询。我做过技术咨询,还为高端客户提供过业务咨询和架构咨询。我喜欢的咨询风格是,给客户以整体解决方案和实施路线图,既能让客户把控项目整体规划,也明确具体的实施过程,同时合理调配团队资源。例如在华中某高铁公司,我带领团队为客户量身定制了一套高铁信息化建设的整体解决方案,其中有客户最关心的高可用方案、负载均衡、安全机制、风险管理、团队规划和技术构架演进路线图等。这种咨询方式有效地提升了客户的信息化建设水平,从而赢得了客户的青睐。
  我在做咨询顾问期间,常与售前团队一起合作,一起分析业务,一起制定方案。在相互合作的过程中,我总结了“降龙十策”,作为售前团队的行动指南,这其中所需的非比寻常的洞察力和领悟能力是我向业界前辈不断学习与汲取而获得的。
  1.决心重于实力。既然决定出手,就要有必胜之决心,同时需具备敏锐的洞察力和迅猛的执行力。在与客户会面交谈的头30分钟至为关键,这是决定成败的重要因素,争取在头30分钟内解决,后面都是补充和完善。
  2.在拜见客户前,从销售代表那里充分了解历史拜访记录,不仅包括我方的,最好也包括竞争对手的,因为这些都会影响客户的选择倾向。知己知彼,方能制定正确对策。
  3.品牌就是说服力,不同水平的人给客户讲授相同的话题,客户的接受程度会相差万里!
  4.给客户介绍产品,是最傻的办法;对客户所提出的问题,面面俱到给予解答,是最笨的办法;实战表明,给客户讲成功案例和项目经验是最好的办法。
  5.在客户面前,空谈方案和计划是没有意义的,一定要善于发掘客户的潜在需求,展现自己的独特价值。例如,帮助客户降低总体拥有成本,帮助客户明确IT建设的长期愿景等。这是我们成功的关键。
  6.了解销售人员的苦痛有时候比了解客户的苦痛更重要,从技术上去帮助销售人员突破商务上的瓶颈,这需要魄力!
  7.客户的苦痛要分级,通常时间非常紧迫,优先在短时间内解决客户的燃眉之急并且对我们来说却是举手之劳的事情,这样带来的好处是赢得客户信赖,为后续打开局面奠定坚实的基础。
  8.给驻扎客户现场的人员一定的授权,用来随机应变,但涉及重大决定或重要承诺时,需要邀请高级领导到场洽谈,来赢得客户信任。
  9.在客户的各级领导面前讲话要慎重,最好在我方销售人员的陪同下,只谈论已经确定下来的事情。道理很简单,客户不同层面人员之间大多数有分歧。
  10.领导力是通过实战来检验的。领导力不神秘,就是能凝聚团队,带领队伍打赢硬仗的能力。我们的风格是跨团队合作,这就需要一个领军者来组织和协调各种资源,使得团队齐心协力,目标一致,取得胜利。避免出现有功争抢,有难拆台的局面。
  有前面两件事的基础,第三件事“做培训”水到渠成,因为,我发现丰富的实施经验和大量的咨询案例,为培训提供了一种先天的优势。国内大部分数据库技术培训的现状是填鸭式的快速培训,培训材料都是原厂英文资料,实验甚少,案例缺乏。我希望提供出众的培训,遂开始编写中文课件,课件中融入了多年的实战技巧和经验总结,力争思路清晰,可操作性强。仅在最近的9个月内我已为超过3200多名用户培训过DB2。特别值得一提的是,我在为重点客户规划技术成长蓝图方面下了不小的功夫,从而可以帮助其数据库技术人员从广度和深度上同时提升技术素养。
  总而言之,这三件事都是我日常工作的缩影。数年前,我的目标是成为IBM公司“DB2第一高手”,而如今,我更希望能与“宝华咨询”团队为数据库生态系统的繁荣作出更大的贡献。
  我们在实战中付出了巨大的艰辛,意志经受住了重重考验,历经千锤百炼。我对成为一名数据库技术的传道者乐此不疲,一直在将所思所想、所学所得分享给中国广大的数据库工作者。从2009年开始,我们写作团队投入到“舞动DB2”系列的编写当中,呕心沥血,锲而不舍,历经三载打造经典之作。
  “长风破浪会有时,直挂云帆济沧海”,借此希望每一位从事数据库工作的奋斗者,不断进步,超越自我,最终实现我们在“舞动DB2”系列中所倡导的:真正看清自己,看清世界,看清未来!
  本书结构
  本书是“舞动DB2”系列的第二本,从内容来看,本书共分为三大部分,共8章。第一部分从开发者遇到的问题进行分析,提出在Oracle兼容模式下开发数据应用的新思路,并讲述了从Oracle迁移到DB2的方法、工具及案例。第二部分讲述了DB2开发工具方面的知识,以及如何更有效地开发存储过程、用户自定义函数和触发器。第三部分讲述了开发者在Java EE和.NET架构下开发数据应用的最佳实践。同时,在附录A中,针对SQL PL与PL/SQL做了集中对比,对快速掌握两者异同是大有裨益的。
  为了帮助广大的中国读者实现从Oracle向DB2转型,本书深入浅出地回答了下面问题:
  1.在兼容和非兼容模式下DB2应用开发的新思路;
  2.在非兼容模式下,如何使用SQL PL语言高效地编写应用;
  3.在兼容模式下,如何使用PL/SQL语言更好地开发数据应用,例如存储过程、用户自定义函数等;
  4.如何选择DB2数据应用开发工具;
  5.Java EE和.NET架构下应用开发的最佳实践。
  最后,本书还提供了精彩絮言部分。所谓精彩絮言,意指DB2开发工作、生活中的精彩花絮和警醒箴言,其中凝聚了我们从事开发的工作经验,也丰富了我们这本书的指导思想。在每章后面都有这个环节,其文环环相扣,贯穿全书。
  读者对象
  如果你学习数据库知识仅一个月,本书可能不是最适合你的。三年前一位来自IBM多伦多实验室的数据库大师曾告诫我:你不要指望一本书可以兼顾入门者和专业者,你更不要做这样的事情。本书目标读者群主要针对以下人员:
  1.从Oracle向DB2转型的技术人员;
  2.DB2应用开发工程师;
  3.Oracle应用开发工程师;
  4.数据库应用架构师;
  5.学习DB2数据库开发技术的高校学生或者从事相关课程教学的教师。
  本书涵盖哪些版本
  本书中绝大多数概念适用于包括DB2 V8 for LUW以来的所有版本。但不可避免的是,我们讨论到的某些特性只是针对特定版本的。具体如下:
  DB2的Oracle兼容特性(第1章):适用于DB2 V9.7及其以后版本。
  表分区和MDC特性(第2章):适用于DB2 V9及其以后版本。
  Data Studio对PL/SQL开发的支持(第3章):适用于DB2 V9.7及其以后版本。
  TOAD for DB2对PL/SQL开发的支持(第3章):适用于DB2 V9.7及其以后版本。
  pureXML数据库设计(第4章):适用于DB2 V9及其以后版本。
  如果没有特别指明某特性只针对某个版本,默认对所有版本都适用。
  在线资源
  可以从www.baochina.net下载本书案例中用到的文件,也可从该网站上找到本书最新的补遗及勘误。同时也欢迎大家到网站相互交流和学习。
  致 谢
  首先感谢电子工业出版社的高洪霞编辑,她在“舞动DB2”系列图书出版过程中给予了我们大力支持和帮助!对IBM中国软件开发中心刘慎锋经理的热心帮助,在此表示衷心感谢。感谢聂花梅在待产期间,还为本书审阅了部分章节,这给予了写作团队莫大的鼓励。感谢郜中华身在法国期间还坚持审稿,这给予了写作团队极大的支持。同时,本书在审稿中还得到了IBM中国开发中心资深软件工程师朱志辉的热心帮助,他细心阅读了全书,并给出了非常专业的建议,在此表示衷心感谢。感谢IBM中国开发中心软件工程师万蒙,他审核了本书大部分章节并提出了宝贵建议;感谢秦怡,她在繁忙的工作之余审核了所有章节的引言和案例部分,并提供了非常重要的建议;感谢所有参与本书审核的同事们,张慧、张金竹和侯战友。
  王飞鹏
  2011年10月写于硅谷

序言

  序 一
  Be prepared to change everything about itself except those beliefs.
  当IBM董事长Sam Palmisano说到这句话时,他正站在庆祝清华大学百年华诞的演讲台上,与莘莘学子分享同样正值百岁生日的IBM是如何通过不断的改变来塑造一个伟大的公司的。
  从制表机、打字机,到磁盘驱动器、内存芯片、自动取款机,再到大型机、个人电脑,直到今年推出的惊世之作——“沃森”计算机系统,每次改变都使信息技术有划时代的飞跃。
  作为IBM最为重要的数据管理软件,DB2本身也在不断地改变着。自DB2 V9.7开始,DB2开始支持Oracle兼容特性,这使得Oracle数据库的迁移周期大为缩减,迁移成本大为降低。为了适应市场需要,2011年5月,IBM正式在中国成立了数据库迁移咨询服务中心(IBM Database Migration Consulting Service Center),其使命是为客户提供安全、高效的迁移服务。在今年第一季度,全球就有210例客户将自身的Oracle数据库成功迁移到DB2上,涉及金融、电信、政府、能源、烟草等行业。其中一个典型案例是,全球最大的饮料生产商可口可乐公司告别Oracle并转而使用DB2,从而成功使得其ERP应用获得更高性能,软硬件成本显著降低,企业竞争力明显提高。
  本书完美诠释了从Oracle到DB2开发的最佳实践,作者团队由来自IBM数据库迁移咨询服务中心的资深专家组成,具有丰富的从Oracle向DB2迁移的实施经验,他们的书一定能带领广大的读者实现华丽的从容转身。
  在大洋彼岸,Luis A. Lamassonne,105岁的前IBM员工,在对媒体描述他是如何为这家伟大的公司奋斗了38年的时候,他说:“是的,改变使这里的一切皆有可能,这就是IBM。”
  IBM中国开发中心信息管理产品开发部
  总经理 朱辉
  2011年10月9日写于北京
  
  序 二
  IBM百年华诞,在2011年夺目九界,璀璨全球。创新,这是IBM能屹立于强手如林的科技界的关键,使得她能够适应科技时代发展的需要,不断创新求变,从而把握时代的脉搏,解决今天及未来企业遇到或可能遇到的重大挑战。
  进入21世纪,IBM与其众多对手们不约而同地投入到了信息时代的竞争。随着信息技术的迅猛发展,作为其核心组成部分的数据之战已成为21世纪“竞争”的新内涵,而作为承载、处理和加工这些数据的数据库软件行业就不可避免地成为主战场。
  为了满足客户各种需求,大家竞争的对象是极富生命力的数据。在数据的整个生命历程中,它会经历设计、开发、部署、运营、优化和治理的不同阶段。这不是一次性的过程,而是通过迭代式的周期,以发挥数据更大的价值。当任何一家企业拥有了对数据强大的管控和支配后,就会在21世纪数据之战中立于不败地位,甚至引领信息时代的发展。
  IBM 正在着手实现一个战略计划,提供一个集成的模块化数据管理环境,帮助企业更高效、准确地管理整个数据生命周期(从需求到报废)。我们将这个过程称为“集成数据管理”,管理数据生命周期的每个环节,并能够支持各种主流厂商提供的数据管理技术,包括DB2、Informix、Oracle等。
  本书中提到的IBM Data Studio,就是应运而生的这样一个工具集,它除了提供对数据库基本的管理功能外,还为数据库应用开发者提供了强大的跨平台的应用开发能力,无论你是DB2爱好者,还是Oracle的粉丝,都会从中获益。IBM Data Studio最大的优势就在于对DB2数据库全面的支持,能够及时地反映并紧跟DB2数据库的发展和更新,同时提供对PL/SQL Package开发的支持。
  本书的作者都有非常丰富的数据库管理和应用开发经验,这使本书具有极佳的实践性和可操作性,相信它能为广大的数据库应用开发者提供前所未有的帮助。
  IBM中国开发中心信息管理产品开发部
  资深经理 孙冰江
.  2011年9月20日写于北京
  
  序 三
  读书是一门大学问,读谁的书?怎么读书?如何书以致用?这些问题可是这门学问中的精髓。倘若读DB2的书,那么“舞动DB2”系列则是必选,因为在数据库界这个系列的每一本书可谓坛坛都是好酒。本人有幸为其中的应用开发篇作序,心中一则以喜,一则以惧。心喜的是数据库应用开发人员的春天来临了,因为终于有一本DB2开发的绝世之作诞生;心惧的是DB2开发的书籍如此之稀缺,不知何年何月才能有更多的精品在图书领域形成规模,以飨众多读者之渴求。
  拜读本书后,我感叹四位作者“看问题眼光准、撰技术功底深、真功夫下得狠”。在书的封面上“从容转身”几个大字,就向读者透露了本书的气概,纵横全书。翻到目录时,便感觉内容安排错落有致,井井有条;读到第1章“我看DB2开发”,大有一观天下的气魄;第2章中,作者将Oracle与DB2做了对比,娓娓道来,条分缕析;第3章涉及工具选择的方方面面,匠心独运,细致入微;第4~6章,服务器端开发技术的巧夺天工让我们领略到DB2的“志存高远”;而第7、8章则从客户端开发技术的角度,精彩展现了为什么DB2不愧为IBM最地地道道的工具。更令人叹为观止的是,本书以精彩絮言的方式,按时间顺序,把每一章内容巧妙地建成了一个驿站,给一路“奔波”的读者们留了个歇脚儿的地儿,来学习技术、品味人生、感慨天下。我不得不为如此奇妙的写作设计拍案叫绝,也为读者能获如此宝鉴而欣喜若狂。本书学习起来真可以说是“朝读此书日行千里,暮执本卷夜过八河”。
  这本书即将出版,我由衷地向本书作者致以崇高的敬意。在两年来的写作过程中,王飞鹏意志坚定、步伐稳健,在数据库这片天地执着、勤奋地向广大技术人员传播经验、传授技巧;李玉明学风严谨,数据库开发技艺精湛,其代码的功力足可以与日月争辉;李睿明天资聪颖,极善于为读者挖掘学习DB2开发的捷径;成孜论学识渊博,文笔翩翩,这位业界奇才是本书质量的重要基石……四位作者优势互补,并肩奋斗,突破重重阻力,终于完成这一大作,给开发者们带来了福音!这本书填补了数据库界的多项空白,我相信其打破多项纪录指日可待。而对于广大读者来讲,大可在本书中自在畅游,揣摩知识技巧,品味技术人生。
  中国工商银行科技部 高级顾问 李伟
  2011年10月10日写于珠海
  

媒体评论

  本书完美诠释了从Oracle到DB2开发的最佳实践,作者团队具有丰富的从Oracle向DB2迁移实施经验,他们的书一定能带领广大的读者实现华丽的从容转身。
  ——IBM中国开发中心信息管理产品开发部 总经理 朱辉
  
  本书的作者都有非常丰富的数据库管理和应用开发经验,使得本书具有极佳的实践性和可操作性,相信能为广大的数据库应用开发者提供前所未有的帮助。
  ——IBM中国开发中心信息管理产品开发部 资深经理 孙冰江
  
  拜读本书后,我感叹作者“看问题眼光准、撰技术功底深、真功夫下得狠”,也为读者能获如此宝鉴而欣喜若狂,学习起来更可以说是“朝读此书日行千里,暮执本卷夜过八河”。对于广大读者来讲,在本书里大可畅游其中,揣摩知识技巧,学习品味技术人生。
  ——中国工商银行科技部 高级顾问 李伟

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25714482/viewspace-712689/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
暂无介绍

注册时间:2011-04-27

  • 博文量
    58
  • 访问量
    584126