<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet href='http://feeds.feedsky.com/styles/temp01.xsl' type='text/xsl' ?><!--这是一个由Feedsy提供技术支持的Feed，为了提高读者阅读的体验，以及满足用户美化自己Feed的需要，我们设计了多种精美的Feed模板，提供给大家选择，所有最终呈现出来的样式，皆由用户自愿选择使用，未经许可，任何团体和个人，请不要擅自修改样式或者盗用，这是对于用户选择权的尊重。--><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:fs="http://www.feedsky.com/namespace/feed" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><atom:link href="http://feeds.feedsky.com/csdn.net/knowhow" type="application/rss+xml" rel="self"></atom:link><fs:self_link href="http://feeds.feedsky.com/csdn.net/knowhow" type="application/rss+xml"></fs:self_link><lastBuildDate>Wed, 29 Jul 2009 13:55:00 GMT</lastBuildDate><title>knowhow的专栏</title><link>http://blog.csdn.net/knowhow/</link><item><title>新员工培训</title><link>http://blog.csdn.net/knowhow/archive/2009/07/29/4390520.aspx</link><wfw:comment>http://blog.csdn.net/knowhow/comments/4390520.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/knowhow/comments/commentRss/4390520.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=4390520</trackback:ping><description>&lt;br /&gt;昨天到公司给新员工培训数据库，员工问了一些规范上的问题：&lt;br /&gt;1.你觉得表设计中多少字段比较合适？&lt;br /&gt;答：视情况而定，没有限制&lt;br /&gt;2.项目经理说我们开发不应该使用Hibernate，你认为呢？&lt;br /&gt;答：我认为是项目经理根本就没有认真研究过Hibernate，最重要的是编程使用的是事务脚本，当然用Hibernate不合适，可以考虑使用Ibatis或者直接JDBC，但是这绝对不是Hibernate的错。&lt;br /&gt;3.我原来编程很有激情，但是现在让我负责维护，感觉没有激情。&lt;br /&gt;答：我们唯一可以改变的就是我们自己，你可以辞职，否则只有改变自己的态度。&lt;br /&gt;4.数据项的安全控制应该放到数据库吗？&lt;br /&gt;答：应该在Facade层，数据库可以认为是外部资源。&lt;br /&gt;5.现在都是说贫血对象，你怎么认为?&lt;br /&gt;答：如果是从底层向上编的话，不贫血才怪，如果你的思维本身就是面向对象的不会出现贫血现象，当然，前提是你的项目有足够的逻辑。例如，家庭和成员维护，你是Family.setMembers还是提供Family.addMember就能看&lt;img src =&quot;http://blog.csdn.net/knowhow/aggbug/4390520.aspx&quot; width = &quot;1&quot; height = &quot;1&quot; /&gt;&lt;img src=&quot;http://www1.feedsky.com/t1/264028537/knowhow/csdn.net/s.gif?r=http://blog.csdn.net/knowhow/archive/2009/07/29/4390520.aspx&quot; border=&quot;0&quot; height=&quot;0&quot; width=&quot;0&quot; style=&quot;position:absolute&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/csdn.net/knowhow/264028537/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/csdn.net/knowhow/264028537/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><pubDate>Wed, 29 Jul 2009 21:55:00 +0800</pubDate><author>王海龙</author><comments>http://blog.csdn.net/knowhow/archive/2009/07/29/4390520.aspx#Feedback</comments><guid isPermaLink="false">http://blog.csdn.net/knowhow/archive/2009/07/29/4390520.aspx</guid><dc:creator>王海龙</dc:creator><fs:srclink>http://blog.csdn.net/knowhow/archive/2009/07/29/4390520.aspx</fs:srclink><fs:srcfeed>http://blog.csdn.net/knowhow/rss.aspx</fs:srcfeed><fs:itemid>csdn.net/knowhow/~6883151/264028537/4991237</fs:itemid></item><item><title>五台山穿越，连穿五台未果</title><link>http://blog.csdn.net/knowhow/archive/2008/07/10/2633105.aspx</link><wfw:comment>http://blog.csdn.net/knowhow/comments/2633105.aspx</wfw:comment><slash:comments>1</slash:comments><wfw:commentRss>http://blog.csdn.net/knowhow/comments/commentRss/2633105.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=2633105</trackback:ping><description>7月5日五台山穿越&lt;br /&gt;计划安排&lt;br /&gt;  本次登大五台共有4人参加，大白鲨、苗苗、快乐天涯和公牛。其中快乐天涯和公牛是第一次登五台，所以根据队员体力情况分成了 两个队：我独自走4个台；另外三人走北台和中台。但是我个人一直有个愿望，希望这次可以一天穿越5个台，因此在出发前做了充分的功课，使用Google Earth 详细分析了西台到南台的路线（东、北、中、西台的路线已经走过几次），并使用激光机打印了10多幅地图；仔细对照、研究几位驴友的攻略；成功减重3斤；出发前一周，安排了一次高原适应性训练，登了一次灵山。&lt;br /&gt;&lt;br /&gt;准备行装&lt;br /&gt;  3.5升水、1升牛奶、&lt;img src =&quot;http://blog.csdn.net/knowhow/aggbug/2633105.aspx&quot; width = &quot;1&quot; height = &quot;1&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/csdn.net/knowhow/264028538/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/csdn.net/knowhow/264028538/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><pubDate>Thu, 10 Jul 2008 19:27:00 +0800</pubDate><author>knowhow</author><comments>http://blog.csdn.net/knowhow/archive/2008/07/10/2633105.aspx#Feedback</comments><guid isPermaLink="false">http://blog.csdn.net/knowhow/archive/2008/07/10/2633105.aspx</guid><dc:creator>knowhow</dc:creator><fs:srclink>http://blog.csdn.net/knowhow/archive/2008/07/10/2633105.aspx</fs:srclink><fs:srcfeed>http://blog.csdn.net/knowhow/rss.aspx</fs:srcfeed><fs:itemid>csdn.net/knowhow/~6883151/264028538/4991237</fs:itemid></item><item><title>Oracle 9i &amp; 10g编程艺术-深入数据库体系结构——第15章：数据加载和卸载</title><link>http://blog.csdn.net/knowhow/archive/2008/02/03/2079684.aspx</link><wfw:comment>http://blog.csdn.net/knowhow/comments/2079684.aspx</wfw:comment><slash:comments>1</slash:comments><wfw:commentRss>http://blog.csdn.net/knowhow/comments/commentRss/2079684.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=2079684</trackback:ping><description>这一章第一部分重点介绍SQL*Loader（SQLLDR），并说明可以采用哪些方法使用这个工具来加载和修改数据库中的数据。我们会讨论以下问题：加载定界数据，更新现有的行和插入新行，卸载数据，以及从存储过程调用SQLLDR。重申一遍，SQLLDR是一个完备而重要的工具，但它的实际使用也带来很多问题。这一章第二部分主要讨论外部表，这是另外一种数据批量加载和卸载的高效方法。&lt;img src =&quot;http://blog.csdn.net/knowhow/aggbug/2079684.aspx&quot; width = &quot;1&quot; height = &quot;1&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/csdn.net/knowhow/264028539/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/csdn.net/knowhow/264028539/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><pubDate>Sun, 03 Feb 2008 20:01:00 +0800</pubDate><author>knowhow</author><comments>http://blog.csdn.net/knowhow/archive/2008/02/03/2079684.aspx#Feedback</comments><guid isPermaLink="false">http://blog.csdn.net/knowhow/archive/2008/02/03/2079684.aspx</guid><dc:creator>knowhow</dc:creator><fs:srclink>http://blog.csdn.net/knowhow/archive/2008/02/03/2079684.aspx</fs:srclink><fs:srcfeed>http://blog.csdn.net/knowhow/rss.aspx</fs:srcfeed><fs:itemid>csdn.net/knowhow/~6883151/264028539/4991237</fs:itemid></item><item><title>Oracle 9i &amp; 10g编程艺术-深入数据库体系结构——第14章：并行执行</title><link>http://blog.csdn.net/knowhow/archive/2008/02/03/2079682.aspx</link><wfw:comment>http://blog.csdn.net/knowhow/comments/2079682.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/knowhow/comments/commentRss/2079682.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=2079682</trackback:ping><description>这一章介绍了Oracle中并行执行（parallel execution）的概念，并说明了如何使用并行执行。首先指出并行处理在什么情况下有用，以及哪些情况下不应考虑使用它。有了一定的认识后，再来讨论并行查询的机制，大多数人提到并行执行都会想到这个特性。接下来讨论并行DML（parallel DML， PDML），利用PDML，可以使用并行执行完成修改。我们会介绍PDML在物理上如何实现，并说明为什么这个实现会对PDML带来一系列限制。

然后再来看并行DDL。在我看来，这才是并行执行真正的闪光之处。通常，DBA会利用一些小的维护窗口来完成大量的操作。利用并行DDL，DBA就能充分利用可用的机器资源，在很短的时间内完成很大、很复杂的操作（它只需原先串行执行所需时间的很小一部分）。

这一章的最后将讨论过程并行机制（procedural parallelism）,采用这种方法可以并行地执行应用程序代码。这里将介绍两个技术。首先是并行管线函数（parallel pipelined function），即Oracle能动态地并行执行存储函数。第二个技术是DIY并行机制（DIY para&lt;img src =&quot;http://blog.csdn.net/knowhow/aggbug/2079682.aspx&quot; width = &quot;1&quot; height = &quot;1&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/csdn.net/knowhow/264028540/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/csdn.net/knowhow/264028540/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><pubDate>Sun, 03 Feb 2008 19:58:00 +0800</pubDate><author>knowhow</author><comments>http://blog.csdn.net/knowhow/archive/2008/02/03/2079682.aspx#Feedback</comments><guid isPermaLink="false">http://blog.csdn.net/knowhow/archive/2008/02/03/2079682.aspx</guid><dc:creator>knowhow</dc:creator><fs:srclink>http://blog.csdn.net/knowhow/archive/2008/02/03/2079682.aspx</fs:srclink><fs:srcfeed>http://blog.csdn.net/knowhow/rss.aspx</fs:srcfeed><fs:itemid>csdn.net/knowhow/~6883151/264028540/4991237</fs:itemid></item><item><title>Oracle 9i &amp; 10g编程艺术-深入数据库体系结构——第13章：分区</title><link>http://blog.csdn.net/knowhow/archive/2008/02/03/2079674.aspx</link><wfw:comment>http://blog.csdn.net/knowhow/comments/2079674.aspx</wfw:comment><slash:comments>1</slash:comments><wfw:commentRss>http://blog.csdn.net/knowhow/comments/commentRss/2079674.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=2079674</trackback:ping><description>分区（partitioning）的目的是为了便于管理非常大的表和索引，即实现一种“分而治之”的逻辑，实际上就是把一个表或索引分解为多个较小的、更可管理的部分。在这方面，DBA和开发人员必须协作，使应用能有最大的可用性和最高的性能。这一章介绍了表分区和索引分区。我们会谈到使用局部索引（在数据仓库中很常用）和全局索引（常见于OLTP系统）的分区。&lt;img src =&quot;http://blog.csdn.net/knowhow/aggbug/2079674.aspx&quot; width = &quot;1&quot; height = &quot;1&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/csdn.net/knowhow/264028541/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/csdn.net/knowhow/264028541/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><pubDate>Sun, 03 Feb 2008 19:54:00 +0800</pubDate><author>knowhow</author><comments>http://blog.csdn.net/knowhow/archive/2008/02/03/2079674.aspx#Feedback</comments><guid isPermaLink="false">http://blog.csdn.net/knowhow/archive/2008/02/03/2079674.aspx</guid><dc:creator>knowhow</dc:creator><fs:srclink>http://blog.csdn.net/knowhow/archive/2008/02/03/2079674.aspx</fs:srclink><fs:srcfeed>http://blog.csdn.net/knowhow/rss.aspx</fs:srcfeed><fs:itemid>csdn.net/knowhow/~6883151/264028541/4991237</fs:itemid></item><item><title>Oracle 9i &amp;amp; 10g编程艺术-深入数据库体系结构——第12章：数据类型</title><link>http://blog.csdn.net/knowhow/archive/2008/01/13/2042280.aspx</link><wfw:comment>http://blog.csdn.net/knowhow/comments/2042280.aspx</wfw:comment><slash:comments>2</slash:comments><wfw:commentRss>http://blog.csdn.net/knowhow/comments/commentRss/2042280.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=2042280</trackback:ping><description>有许多数据类型（datatype）可供选择。这一章会逐一分析22种内置数据类型，解释这些类型是如何实现的，并说明如何以及何时使用这些数据类型。首先对国家语言支持（National Language Support，NLS）做一个简要的概述；要想充分理解Oracle中简单的串类型，必须先掌握这个基础知识。接下来再讨论广泛使用的NUMBER类型，并介绍Oracle 10g对于在数据库中存储数值又提供了哪些新的选项。我们主要从历史角度介绍LONG和LONG RAW类型，目的是讨论如何处理应用中遗留的LONG列，并将其移植为LOB类型。然后会深入介绍分析存储日期和时间的各种数据类型，讨论如何处理这些数据类型来得到我们想要的结果。这里还会谈到时区支持的有关细节。接下来讨论LOB数据类型。我们会说明LOB类型的存储方式，并指出各种设置（如IN ROW、CHUNK、RETENTION、CACHE等）对我们有什么意义。处理LOB时，重要的是要了解默认情况下它们如何实现和存储，在对LOB的获取和存储进行调优时这一点尤其重要。本章的最后介绍ROWID和UROWID类型。这些是Oracle专用的特殊&lt;img src =&quot;http://blog.csdn.net/knowhow/aggbug/2042280.aspx&quot; width = &quot;1&quot; height = &quot;1&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/csdn.net/knowhow/264028542/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/csdn.net/knowhow/264028542/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><pubDate>Mon, 14 Jan 2008 02:11:00 +0800</pubDate><author>王海龙</author><comments>http://blog.csdn.net/knowhow/archive/2008/01/13/2042280.aspx#Feedback</comments><guid isPermaLink="false">http://blog.csdn.net/knowhow/archive/2008/01/13/2042280.aspx</guid><dc:creator>王海龙</dc:creator><fs:srclink>http://blog.csdn.net/knowhow/archive/2008/01/13/2042280.aspx</fs:srclink><fs:srcfeed>http://blog.csdn.net/knowhow/rss.aspx</fs:srcfeed><fs:itemid>csdn.net/knowhow/~6883151/264028542/4991237</fs:itemid></item><item><title>Oracle 9i &amp; 10g编程艺术-深入数据库体系结构——第11章：索引</title><link>http://blog.csdn.net/knowhow/archive/2008/01/13/2042277.aspx</link><wfw:comment>http://blog.csdn.net/knowhow/comments/2042277.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/knowhow/comments/commentRss/2042277.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=2042277</trackback:ping><description>索引是应用设计的一个重要方面。要想正确地实现索引，要求深入地了解数据，清楚数据如何发布，并且知道要如何使用数据。人们经常把索引当作“马后炮”，直到应用开发的后期才增加，这就会导致应用的性能低下。

这一章将详细分析各种类型的索引，包括B*Tree索引、位图索引（bitmap index）、基于函数索引（function-based index）和应用域索引（application domain index），并讨论各种索引应该在哪些场合使用，以及哪些场合不适用。我会在“有关索引的常见问题和神话”一节回答常常被问到的一些问题，如“索引能在视图上使用吗？”和“为什么没有使用我的索引？”。&lt;img src =&quot;http://blog.csdn.net/knowhow/aggbug/2042277.aspx&quot; width = &quot;1&quot; height = &quot;1&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/csdn.net/knowhow/264028543/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/csdn.net/knowhow/264028543/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><pubDate>Mon, 14 Jan 2008 02:08:00 +0800</pubDate><author>knowhow</author><comments>http://blog.csdn.net/knowhow/archive/2008/01/13/2042277.aspx#Feedback</comments><guid isPermaLink="false">http://blog.csdn.net/knowhow/archive/2008/01/13/2042277.aspx</guid><dc:creator>knowhow</dc:creator><fs:srclink>http://blog.csdn.net/knowhow/archive/2008/01/13/2042277.aspx</fs:srclink><fs:srcfeed>http://blog.csdn.net/knowhow/rss.aspx</fs:srcfeed><fs:itemid>csdn.net/knowhow/~6883151/264028543/4991237</fs:itemid></item><item><title>Oracle 9i &amp; 10g编程艺术-深入数据库体系结构——第10章：数据库表</title><link>http://blog.csdn.net/knowhow/archive/2008/01/13/2042273.aspx</link><wfw:comment>http://blog.csdn.net/knowhow/comments/2042273.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/knowhow/comments/commentRss/2042273.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=2042273</trackback:ping><description>Oracle现在支持多种表类型。这一章将分别介绍每一种类型，包括堆组织表（heap organized，也就是默认的“普通”表）、索引组织表（index organized）、索引聚簇表（index clustered）、散列聚簇表（hash clustered）、嵌套表（nested）、临时表（temporary）和对象表（object），并讨论什么时候使用这些类型的表、如何使用以及为什么使用。大多数情况下，堆组织表就足够了，不过这一章还将帮助你认识到在哪些情况下使用其他类型的表更合适。&lt;img src =&quot;http://blog.csdn.net/knowhow/aggbug/2042273.aspx&quot; width = &quot;1&quot; height = &quot;1&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/csdn.net/knowhow/264028544/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/csdn.net/knowhow/264028544/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><pubDate>Mon, 14 Jan 2008 02:00:00 +0800</pubDate><author>knowhow</author><comments>http://blog.csdn.net/knowhow/archive/2008/01/13/2042273.aspx#Feedback</comments><guid isPermaLink="false">http://blog.csdn.net/knowhow/archive/2008/01/13/2042273.aspx</guid><dc:creator>knowhow</dc:creator><fs:srclink>http://blog.csdn.net/knowhow/archive/2008/01/13/2042273.aspx</fs:srclink><fs:srcfeed>http://blog.csdn.net/knowhow/rss.aspx</fs:srcfeed><fs:itemid>csdn.net/knowhow/~6883151/264028544/4991237</fs:itemid></item><item><title>Oracle 9i &amp; 10g编程艺术-深入数据库体系结构——第9章：redo与undo</title><link>http://blog.csdn.net/knowhow/archive/2008/01/13/2042266.aspx</link><wfw:comment>http://blog.csdn.net/knowhow/comments/2042266.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/knowhow/comments/commentRss/2042266.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=2042266</trackback:ping><description>可能有人说，开发人员不用像DBA那样深入了解redo（重做信息）和undo（撤销信息）的细节，但是开发人员确实要清楚redo和undo在数据库中所起的重要作用。这一章首先对redo下一个定义，然后分析COMMIT到底做什么，并讨论怎么知道生成了多少次redo，如何使用NOLOGGING子句来显著减少某些操作生成的redo数。我们还研究了redo生成与块清除（block cleanout）和（log contention）等问题的关系。

这一章的undo一节中讨论了撤销数据的作用，并介绍哪些操作会生成最多/最少的undo。最后分析“讨厌”的ORA-01555：snapshot too old（ORA-01555：快照太旧）错误，解释导致这个错误的可能原因，并说明如何避免。&lt;img src =&quot;http://blog.csdn.net/knowhow/aggbug/2042266.aspx&quot; width = &quot;1&quot; height = &quot;1&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/csdn.net/knowhow/264028545/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/csdn.net/knowhow/264028545/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><pubDate>Mon, 14 Jan 2008 01:55:00 +0800</pubDate><author>knowhow</author><comments>http://blog.csdn.net/knowhow/archive/2008/01/13/2042266.aspx#Feedback</comments><guid isPermaLink="false">http://blog.csdn.net/knowhow/archive/2008/01/13/2042266.aspx</guid><dc:creator>knowhow</dc:creator><fs:srclink>http://blog.csdn.net/knowhow/archive/2008/01/13/2042266.aspx</fs:srclink><fs:srcfeed>http://blog.csdn.net/knowhow/rss.aspx</fs:srcfeed><fs:itemid>csdn.net/knowhow/~6883151/264028545/4991237</fs:itemid></item><item><title>Oracle 9i &amp; 10g编程艺术-深入数据库体系结构——第8章：事务</title><link>http://blog.csdn.net/knowhow/archive/2008/01/13/2042255.aspx</link><wfw:comment>http://blog.csdn.net/knowhow/comments/2042255.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/knowhow/comments/commentRss/2042255.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=2042255</trackback:ping><description>事务是所有数据库的一个基本特性，这也是数据库区别于文件系统的一个方面。不过，事务常常遭到误解，很多开发人员甚至不知道他们有时没有使用事务。这一章讨论Oracle中应当如何使用事务，还列出了使用数据库进行开发时可能出现的一些“坏习惯”。特别地，我们将讨论原子性的含义，并说明原子性对Oracle中的语句有何影响。这一章还会讨论事务控制语句（COMMIT、SAVEPOINT和ROLLBACK）、完整性约束和分布式事务（两段提交或2PC），最后介绍自治事务。&lt;img src =&quot;http://blog.csdn.net/knowhow/aggbug/2042255.aspx&quot; width = &quot;1&quot; height = &quot;1&quot; /&gt;&lt;p class=&quot;fswww1&quot;&gt;&lt;a href=&quot;http://www1.feedsky.com/r/l/csdn.net/knowhow/264028546/art01.html&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; ismap=&quot;ismap&quot; src=&quot;http://www1.feedsky.com/r/i/csdn.net/knowhow/264028546/art01.gif&quot; onerror=&quot;this.style.display='none'&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description><pubDate>Mon, 14 Jan 2008 01:50:00 +0800</pubDate><author>knowhow</author><comments>http://blog.csdn.net/knowhow/archive/2008/01/13/2042255.aspx#Feedback</comments><guid isPermaLink="false">http://blog.csdn.net/knowhow/archive/2008/01/13/2042255.aspx</guid><dc:creator>knowhow</dc:creator><fs:srclink>http://blog.csdn.net/knowhow/archive/2008/01/13/2042255.aspx</fs:srclink><fs:srcfeed>http://blog.csdn.net/knowhow/rss.aspx</fs:srcfeed><fs:itemid>csdn.net/knowhow/~6883151/264028546/4991237</fs:itemid></item></channel></rss>