﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>IT博客-youyou-随笔分类-学习</title><link>http://www.cnitblog.com/youyou/category/5997.html</link><description>IT 这一路走来.....</description><language>zh-cn</language><lastBuildDate>Sat, 01 Oct 2011 08:16:44 GMT</lastBuildDate><pubDate>Sat, 01 Oct 2011 08:16:44 GMT</pubDate><ttl>60</ttl><item><title>笛卡儿积解释</title><link>http://www.cnitblog.com/youyou/archive/2007/09/07/33134.html</link><dc:creator>.柚柚之Blog.</dc:creator><author>.柚柚之Blog.</author><pubDate>Fri, 07 Sep 2007 14:48:00 GMT</pubDate><guid>http://www.cnitblog.com/youyou/archive/2007/09/07/33134.html</guid><wfw:comment>http://www.cnitblog.com/youyou/comments/33134.html</wfw:comment><comments>http://www.cnitblog.com/youyou/archive/2007/09/07/33134.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/youyou/comments/commentRss/33134.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/youyou/services/trackbacks/33134.html</trackback:ping><description><![CDATA[笛卡儿1596年3月31日生于法国都兰城,是近代科学和理性之父，他还发明了解析几何。他的著名的《方法谈》<br><br>的开头两章说明他的思想历程和他在23岁时所达到和开始应用的方法。牛顿的所有发现都完全套用他的方法。<br><br>他的方法容易使人掌握，而且一旦掌握了方法，任何人都可以作出发现或找到新的真理。这样，真理的发现不<br><br>再属于具有特殊才能或超常智慧的人们。《方法谈》他列举的四条是最先完整表达的近代科学思想方法。<br><br>&nbsp;笛卡儿积是集合论中很重要的概念，已知一组集合S1、S2、...、Sn，他们的笛卡儿积S定义 为： S = <br><br>{(x1,x2,...,n) | x1 &#8712;S1， x2 &#8712;S2， ... Sn的一个关系定义为他们的笛卡儿积S的一个子集。如果这个子<br><br>集是空集或者S本身，则称这个关系是一个平凡关系<br><img src ="http://www.cnitblog.com/youyou/aggbug/33134.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/youyou/" target="_blank">.柚柚之Blog.</a> 2007-09-07 22:48 <a href="http://www.cnitblog.com/youyou/archive/2007/09/07/33134.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>union all与union的区别</title><link>http://www.cnitblog.com/youyou/archive/2007/09/07/33133.html</link><dc:creator>.柚柚之Blog.</dc:creator><author>.柚柚之Blog.</author><pubDate>Fri, 07 Sep 2007 14:47:00 GMT</pubDate><guid>http://www.cnitblog.com/youyou/archive/2007/09/07/33133.html</guid><wfw:comment>http://www.cnitblog.com/youyou/comments/33133.html</wfw:comment><comments>http://www.cnitblog.com/youyou/archive/2007/09/07/33133.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/youyou/comments/commentRss/33133.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/youyou/services/trackbacks/33133.html</trackback:ping><description><![CDATA[UNION 运算符：<br><br>将两个或更多查询的结果组合为单个结果集，该结果集包含联合查询中的所有查询的全部行。这与使用联接组<br><br>合两个表中的列不同。<br><br>使用 UNION 组合两个查询的结果集的两个基本规则是：<br><br>所有查询中的列数和列的顺序必须相同。<br><br>数据类型必须兼容。<br><br>union all和union都 可以把两张表连起来，union&nbsp; 会排除重复的记录&nbsp; union&nbsp; all&nbsp; 不会排除重复的记录。<br><br>不同于join，join为笛卡儿积。<br><br><br><img src ="http://www.cnitblog.com/youyou/aggbug/33133.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/youyou/" target="_blank">.柚柚之Blog.</a> 2007-09-07 22:47 <a href="http://www.cnitblog.com/youyou/archive/2007/09/07/33133.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>EXISTS与IN的区别</title><link>http://www.cnitblog.com/youyou/archive/2007/09/07/33132.html</link><dc:creator>.柚柚之Blog.</dc:creator><author>.柚柚之Blog.</author><pubDate>Fri, 07 Sep 2007 14:46:00 GMT</pubDate><guid>http://www.cnitblog.com/youyou/archive/2007/09/07/33132.html</guid><wfw:comment>http://www.cnitblog.com/youyou/comments/33132.html</wfw:comment><comments>http://www.cnitblog.com/youyou/archive/2007/09/07/33132.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/youyou/comments/commentRss/33132.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/youyou/services/trackbacks/33132.html</trackback:ping><description><![CDATA[IN<br>确定给定的值是否与子查询或列表中的值相匹配。<br>EXISTS<br>指定一个子查询，检测行的存在。<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 下面从具体的语句来看：<br>select * from 表A where exists(select * from 表B where 表B.id=表A.id)<br><br>这句相当于<br><br>select * from 表A where id in (select id from 表B)<br><br><br>对于表A的每一条数据,都执行select * from 表B where 表B.id=表A.id的存在性判断,如果表B中存在表A当前<br><br>行相同的id,则exists为真,该行显示,否则不显示<br><br><img src ="http://www.cnitblog.com/youyou/aggbug/33132.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/youyou/" target="_blank">.柚柚之Blog.</a> 2007-09-07 22:46 <a href="http://www.cnitblog.com/youyou/archive/2007/09/07/33132.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Access数据库与sqlserver数据库的区别</title><link>http://www.cnitblog.com/youyou/archive/2007/09/07/33131.html</link><dc:creator>.柚柚之Blog.</dc:creator><author>.柚柚之Blog.</author><pubDate>Fri, 07 Sep 2007 14:44:00 GMT</pubDate><guid>http://www.cnitblog.com/youyou/archive/2007/09/07/33131.html</guid><wfw:comment>http://www.cnitblog.com/youyou/comments/33131.html</wfw:comment><comments>http://www.cnitblog.com/youyou/archive/2007/09/07/33131.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/youyou/comments/commentRss/33131.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/youyou/services/trackbacks/33131.html</trackback:ping><description><![CDATA[<br>&nbsp;&nbsp;&nbsp;&nbsp; Microsoft Access是一种桌面数据库，只适合数据量少的应用，在处理少量数据和单机访问的数据库时是很好的，效率也很高。但是它的同时访问客户端不能多于4个。 Microsoft Access数据库有一定的极限，如果数据达到100M左右，很容易造成服务器iis假死，或者消耗掉服务器的内存导致服务器崩溃。<br><br>　　Microsoft SQL Server是基于服务器端的中型的数据库，可以适合大容量数据的应用，在功能上管理上也<br>要比Microsoft Access要强得多。在处理海量数据的效率，后台开发的灵活性，可扩展性等方面强大。因为现<br>在数据库都使用标准的SQL语言对数据库进行管理，所以如果是标准SQL语言，两者基本上都可以通用<br>的。Microsoft SQL Server还有更多的扩展，可以用存储过程，数据库大小无极限限制。<br><img src ="http://www.cnitblog.com/youyou/aggbug/33131.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/youyou/" target="_blank">.柚柚之Blog.</a> 2007-09-07 22:44 <a href="http://www.cnitblog.com/youyou/archive/2007/09/07/33131.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Access与sqlserver的区别</title><link>http://www.cnitblog.com/youyou/archive/2007/09/07/33130.html</link><dc:creator>.柚柚之Blog.</dc:creator><author>.柚柚之Blog.</author><pubDate>Fri, 07 Sep 2007 14:13:00 GMT</pubDate><guid>http://www.cnitblog.com/youyou/archive/2007/09/07/33130.html</guid><wfw:comment>http://www.cnitblog.com/youyou/comments/33130.html</wfw:comment><comments>http://www.cnitblog.com/youyou/archive/2007/09/07/33130.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/youyou/comments/commentRss/33130.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/youyou/services/trackbacks/33130.html</trackback:ping><description><![CDATA[<span style="color: red;">1，对于日期字段字段</span><br><br>　　access表示为:#1981-28-12#<br><br>　　SQLSERVER2000表示为:''1981-02-12''<br><br><span style="color: red;">2,SQL语句区别，select ,update 在对单表操作时都差不多</span>，<br><br>　　但多表操作时update语句的区别ACCESS与SQLSERVER中的UPDATE语句对比:<br><br>　　SQLSERVER中更新多表的UPDATE语句:<br><br>　　UPDATE Tab1<br><br>　　SET a.Name = b.Name<br><br>　　FROM Tab1 a,Tab2 b<br><br>　　WHERE a.ID = b.ID;<br><br>　　同样功能的SQL语句在ACCESS中应该是<br><br>　　UPDATE Tab1 a,Tab2 b<br><br>　　SET a.Name = b.Name<br><br>　　WHERE a.ID = b.ID;<br><br>　　即:ACCESS中的UPDATE语句没有FROM子句,所有引用的表都列在UPDATE关键字后.<br><br>　　更新单表时:都为:<br><br>　　UPDATE table1 set ab='12',cd=444 where ....<br><br><span style="color: red;">3,delete语句</span><br><br>　　access中删除时用:delete * from table1 where a&gt;2 即只要把select 语句里的select 换成delete就可以了。<br><br>　　sqlserve 中则为: delete from table1 where a&gt;2 即没有*号<br><br><span style="color: red;">4，as 后面的计算字段区别</span><br><br>　　access中可以这样:select a,sum(num) as kc_num,kc_num*num as all_kc_num 即可以把AS后的字段当作一个数据库字段参与计算。<br><br>　　sqlserver 中则为:select a,sum(num) as kc_num,sum(num)*num as all_kc_num 即不可以把AS后的字段当作一个数据库字段参与计算。<br><span style="color: red;">5，[.]与[!]的区别</span><br><br>　　access中多表联合查询时:select tab1!a as tab1a,tab2!b tab2b from tab1,tab2 ,中间的AS可以不要。<br><br>　　sqlserve 中则:select tab1.a as tab1a,tab2.b tab2b from tab1,tab2 ,中间的AS可以不要。<br><br><span style="color: red;">6,联合查询时，</span><br><br>　　access中多表联合查询:'select a,b from(<br><br>　　select a,b from tab1 where a&gt;3 union select c,d from tab2 ) group by a,b<br><br>　　sqlserve 中则'select a,b from(<br><br>　　select a,b from tab1 where a&gt;3 union select c,d from tab2 ) tmptable group by a,b即要加一个虚的表tmptable，表名任意。---<br><br><img src ="http://www.cnitblog.com/youyou/aggbug/33130.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/youyou/" target="_blank">.柚柚之Blog.</a> 2007-09-07 22:13 <a href="http://www.cnitblog.com/youyou/archive/2007/09/07/33130.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>关系数据库系统与面向对象数据库系统各自的优缺点</title><link>http://www.cnitblog.com/youyou/archive/2007/09/07/33129.html</link><dc:creator>.柚柚之Blog.</dc:creator><author>.柚柚之Blog.</author><pubDate>Fri, 07 Sep 2007 14:01:00 GMT</pubDate><guid>http://www.cnitblog.com/youyou/archive/2007/09/07/33129.html</guid><wfw:comment>http://www.cnitblog.com/youyou/comments/33129.html</wfw:comment><comments>http://www.cnitblog.com/youyou/archive/2007/09/07/33129.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cnitblog.com/youyou/comments/commentRss/33129.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/youyou/services/trackbacks/33129.html</trackback:ping><description><![CDATA[<span style="color: red;">①关系数据库系统的优点</span><br><br>a．灵活性和建库的简单性：从软件开发的前景来看，用户与关系数据库编程之间的接口是灵活与友好的。目前在多数RDDMS产品中使用标准查询语言SQL，允许用户几乎毫无差别地从一个产品到另一个产品存取信息。与关系数据库接口的应用软件具有相似的程序访问机制，提供大量标准的数据存取方法。<br><br>b．结构简单：从数据建模的前景看，关系数据库具有相当简单的结构（元组），可为用户或程序提供多个复杂的视图。数据库设计和规范化过程也简单易行和易于理解。由于关系数据库的强有力的、多方面的功能，已经有效地支持许多数据库纳应用。<br><span style="color: red;">②关系数据库系统的缺点</span><br><br>a．数据类型表达能力差：从下一代应用软件的发展角度来看，关系数据库的根本缺陷在于缺乏直接构造与这些应用有关的信息的类型表达能力，缺乏这种能力将产生以下有害的影响，例如：大多数RDBMS产品所采用的简单类型在重构复杂数据的过程中将会出现性能问题；数据库设计过程中的额外复杂性；RDBMS产品和编程语言在数据类型方面的不协调。<br><br>&nbsp;&nbsp;&nbsp; 大多数现代的RDBMS产品已成熟地用于商务和财政方面，而这些领域不要求很高和很复杂的数据模型。虽然这些产品多多少少克服了一些以上所述的缺点，但从理论上看关系数据模型不直接支持复杂的数据类型，这是由于第一范式的要求，所有的数据必须转换为简单的类型，如整数、实数、双精度数和字符串。<br><br>&nbsp;&nbsp;&nbsp; 对于工程应用来说，这种不能支持复杂数据类型的典型结果就是需要额外地分解数据结构工作，这些被分解的结构不能直接表示应用数据，且从基本成分重构时也非常繁琐和费时间。<br><br>b．复杂查询功能差：关系数据库系统的某些优点也同时是它的不足之处。虽然SQL语言为数据查询提供了很好的定义方法，但当用于复杂信息的查询时可能是非常繁琐的。此外，在工程应用时规范化的过程通常会产生大量的简单表。在这种环境下由存取信息产生的查询必须处理大量的表和复杂的码联系以及连接运算。<br><br>&nbsp;&nbsp;&nbsp; 除非这些查询以固定的例行程序方式提供，否则用户就必须对SQL非常熟悉，以便适当地浏览数据库，查出所需的信息。然而，一旦查询方式按固定例行程序方式进行，用户最终就进行应用软件的常规维护。但应用或人机接口软件的变化又可能要求经常修改例行的查询，数据库结构的变化也可能导致例行查询程序以及应用或人机接口软件的失效。由于这些原因，关系数据库系统的维护开销可能是很大的。<br><br>&nbsp;&nbsp; 由于关系数据库不能提供足够的构造能力及性能方面的原因，在进行较复杂的数据库设计过程中，不可能将许多工程问题直接分解成一些简单的部分。由于缺乏直接指针存取方法，所以查询有关的信息需要花费时间。<br><br>c．支持长事务能力差；由于RDBMS记录锁机制的颗粒度限制，对于支持多种记录类型的大段数据的登记和检查来说，简单的记录级的锁机制是不够的，但基于键值关系的较复杂的锁机制来说却很难推广也难以实现。<br><br>d．环境应变能力差：在要求系统频繁改变的环境下，关系系统的成本高且修改困难。在工程应用中支持"模式演变"（schema evolution）的功能是很重要的，而RDBMS不容易支持这种功能。另外，关系数据库和编程语言所提供的数据类型的不一致，使得从一个环境转换到另一个环境时需要多至30％的附加代码。<br><span style="color: red;">③面向对象数据库系统的优点</span><br><br>a．能有效地表达客观世界和有效地查询信息：面向对象方法综合了在关系数据库中发展的全部工程原理、系统分析、软件工程和专家系统领域的内容。面向对象的方法符合一般人的思维规律、即将现实世界分解成明确的对象，这些对象具有属性和行为。系统设计人员用ODBMS创建的计算机模型能更直接反映客观世界，最终用户不管是否是计算机专业人员，都可以通过这些模型理解和评述数据库系统。<br><br>工程中的一些问题对关系数据库来说显得太复杂，不采取面向对象的方法很难实现。从构造复杂数据的前景看，信息不再需要手工地分解为细小的单元。ODBMS扩展了面向对象的编程环境，该环境可以支持高度复杂数据结构的直接建模。<br><br>b．可维护性好：在耦合性和内聚性方面，面向对象数据库的性能尤为突出。这使得数据库设计者可在尽可能少影响现存代码和数据的条件下修改数据库结构，在发现有不能适合原始模型的特殊情况下，能增加一些特殊的类来处理这些情况而不影响现存的数据。如果数据库的基本模式或设计发生变化，为与模式变化保持一致，数据库可以建立原对象的修改版本。这种先进的耦合性和内聚性也简化了在异种硬件平台的网络上的分布式数据库的运行。<br><br>c．能很好地解决"阻抗不匹配"（impedance mismatch）问题。面向对象数据库还解决了一个关系数据库运行中的典型问题：应用程序语言与数据库管理系统对数据类型支持的不一致问题，这一问题通常称之为阻抗不匹配问题。<br><span style="color: red;">④面向对象数据库系统的缺点</span><br><br>a．技术还不成熟。面向对象数据库技术的根本缺点是这项技术还不成熟，还不广为人知。与许多新技术一样，风险就在于应用。从事面向对象数据库产品和编程环境的销售活动的公司还不令人信服，因为这些公司的历史还相当短暂，就该十几年前关系数据库的情况一样。ODBMS如今还存在着标准化问题，由于缺乏标准化，许多不同的ODBMS之间不能通用。此外，是否修改SQL以适应面向对象的程序，还是用新的对象查询语言来代替它，目前还没有解决，这些因素表明随着标准化的出现，ODBMS还会变化。<br><br>b．面向对象技术需要一定的训练时间：有面向对象系统开发经验的公司的专业人员认为，要成功地开发这种系统的关键是正规的训练，训练之所以重要是由于面向对象数据库的开发是从关系数据库和功能分解方法转化而来的，人们还需要学习一套新的开发方法使之与现有技术相结合。此外，面向对象系统开发的有关原理才刚开始具有雏形，还需一段时间在可靠性、成本等方面令人可接受。<br><br>c．理论还需完善：从正规的计算机科学方面看，还需要设计出坚实的演算或理论方法来支持ODBMS的产品。此外，既不存在一套数据库设计方法学，也没有关于面向对象分析的一套清晰的概念模型，怎样设计独立于物理存储的信息还不明确。<br><br>面向对象数据库和关系数据库系统之间的争论不同于70年代关系数据库和网状数据库的争论，那时的争论是在同一主要领域（即商业事务应用）中究竟是谁代替谁的问题。现在是肯定关系数据库系统基本适合商业事务处理的前提下，对非传统的应用，特别是工程中的应用用面向对象数据库来补充不足的问题。面向对象数据库系统将成为下一代数据库的典型代表，并和关系数据库系统并存（而不是替代）。它将在不同的应用领域支持不同的应用需求。<br><br>经过数年的开发和研究，面向对象数据库的当前状况是：对面向对象数据库的核心概念逐步取得了共同的认识，标准化的工作正在进行；随着核心技术逐步解决，外围工具正在开发，面向对象数据库系统正在走向实用阶段；对性能和形式化理论的担忧仍然存在。系统在实现中仍面临着新技术的挑战。<br><br><br><br> <img src ="http://www.cnitblog.com/youyou/aggbug/33129.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/youyou/" target="_blank">.柚柚之Blog.</a> 2007-09-07 22:01 <a href="http://www.cnitblog.com/youyou/archive/2007/09/07/33129.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>面向对象数据库系统与关系数据库系统的比较</title><link>http://www.cnitblog.com/youyou/archive/2007/09/07/33128.html</link><dc:creator>.柚柚之Blog.</dc:creator><author>.柚柚之Blog.</author><pubDate>Fri, 07 Sep 2007 13:56:00 GMT</pubDate><guid>http://www.cnitblog.com/youyou/archive/2007/09/07/33128.html</guid><wfw:comment>http://www.cnitblog.com/youyou/comments/33128.html</wfw:comment><comments>http://www.cnitblog.com/youyou/archive/2007/09/07/33128.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/youyou/comments/commentRss/33128.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/youyou/services/trackbacks/33128.html</trackback:ping><description><![CDATA[<span style="color: #ff5028;">⑴面向对象数据库管理系统（ODBMS）和关系数据库管理系统（RDBMS）的共同特点</span><br><br><br><span style="color: #ff5028;">⑵基本特性的比较</span><br><br>&nbsp;&nbsp;&nbsp; 如前所述，面向对象和关系数据库二者都支持数据库的持久性、二次存储管理、并发控制、恢复和查询的功能。但这两种方式是以不同的范例（paradigm）或数据模型为基础的。这种基本的不同表现在按一种技术开发数据库所采取的方法论明显地与另一种的差异，即：<br>a. 面向对象的范例是以分类为基础的，类用于定义存储在数据库内对象的结构及行为。<br>b. 关系范例是以元组（tuple）或记录为基础的，它被唯一地用来定义存储在数据库内的数据结构。一组元组被称之为一个关系（relation）或一个表（table）。<br><span style="color: #ff5028;">⑶开发方法的比较</span><br><br>①关系数据库的开发<br>&nbsp;&nbsp;&nbsp; 在关系数据库的开发过程中，对于被存储的数据实体是通过它们的属性或变量来描述的。实体一旦被描述，初始的数据结构需经过"规范化" (normalization)的处理来建立一组表（关系），同时减少了包含在元组中冗余的信息量。另外，每个元组至少要有一个特殊的属性称之为"码" (Key)，它能唯一地标识表中的每个记录。码用于将各个不同表中的记录明显地联系起来。<br>②面向对象数据库的开发<br>&nbsp;&nbsp;&nbsp; 面向对象数据库的开发过程中，实体应存什么数据也是由它们的属性来描述的。但与关系数据库不同的是将数据简化成一些类型，而不必经常引入码。对于复杂的应用来说，引入码是个特别繁琐的过程。<br>&nbsp;&nbsp;&nbsp; 面向对象数据库的设计过程的注意力集中在以尽可能自然和直接的方式对现实世界的实体进行分类。类可以按子类的等级来组织，子类是定义较特殊一类对象集合的较自然的一种方法。子类继承了现存父类的属性。如前所述，继承是面向对象与关系系统之间差别的关键特点之一，尽管某些扩展的关系数据库如Ingress可以提供有限的继承能力。<br>&nbsp;&nbsp;&nbsp;&nbsp; 在ODBMS中数据的冗余也有不同的管理方式。在关系数据库中对表的结构进行分解使得实体属性以最少的表来表示。而在 ODBMS中冗余的处理是按类结构进行，它与所存数据格式相对独立。唯一的一组属性被归并为一类，并能被许多子类重新使用，父类的变化将自动地用于其低层的类中，这意味着几个对象可以共享相同的属性，而不会在存取数据库中的对象时引起冗余问题。<br>&nbsp;&nbsp;&nbsp;&nbsp; 在查询方面，ODBMS也提供与关系数据库相似的陈述式查询方式，但比RDBMS增加了直接引用的能力。采用直接引用来查询相应对象的方法比关系数据库存取的性能要高一到两个数量级。<br><span style="color: #ff5028;">⑷性能的比较</span><br>&nbsp;&nbsp;&nbsp;&nbsp; ODBMS 和RDBMS产品数据存取性能的差别已按通用测试标准验证过了。SUN公司的Riok Cattell等人著的"对象数据库评估"(1991年对象世界会议文集)已对四个ODBMS产品：Objectivity，Objectstore， Ontos，Versant以及两个RDBMS产品：Sybase和Ingress进行了测试。一般说来，对于"冷"数据存取（对磁盘数据库存取） ODBMS比RDBMS平均快5倍；对于"热"数据存取（在内存中的数据库存取）要快30倍，对于"热导航"（在内存中对某一给定的对象访问与之相联系的所有对象）ODBMS任何一个产品都比RDBMS的每一个产品性能要高出三个数量级。<br><br><br><br><br><img src ="http://www.cnitblog.com/youyou/aggbug/33128.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/youyou/" target="_blank">.柚柚之Blog.</a> 2007-09-07 21:56 <a href="http://www.cnitblog.com/youyou/archive/2007/09/07/33128.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Oracle 体系结构</title><link>http://www.cnitblog.com/youyou/archive/2007/08/27/32509.html</link><dc:creator>.柚柚之Blog.</dc:creator><author>.柚柚之Blog.</author><pubDate>Mon, 27 Aug 2007 15:02:00 GMT</pubDate><guid>http://www.cnitblog.com/youyou/archive/2007/08/27/32509.html</guid><wfw:comment>http://www.cnitblog.com/youyou/comments/32509.html</wfw:comment><comments>http://www.cnitblog.com/youyou/archive/2007/08/27/32509.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/youyou/comments/commentRss/32509.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/youyou/services/trackbacks/32509.html</trackback:ping><description><![CDATA[<img alt="" src="http://www.cnitblog.com/images/cnitblog_com/youyou/ee.JPG"><br>&nbsp;<br><br>  <img src ="http://www.cnitblog.com/youyou/aggbug/32509.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/youyou/" target="_blank">.柚柚之Blog.</a> 2007-08-27 23:02 <a href="http://www.cnitblog.com/youyou/archive/2007/08/27/32509.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>heap与stack的区别.</title><link>http://www.cnitblog.com/youyou/archive/2007/08/06/31352.html</link><dc:creator>.柚柚之Blog.</dc:creator><author>.柚柚之Blog.</author><pubDate>Mon, 06 Aug 2007 12:08:00 GMT</pubDate><guid>http://www.cnitblog.com/youyou/archive/2007/08/06/31352.html</guid><wfw:comment>http://www.cnitblog.com/youyou/comments/31352.html</wfw:comment><comments>http://www.cnitblog.com/youyou/archive/2007/08/06/31352.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/youyou/comments/commentRss/31352.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/youyou/services/trackbacks/31352.html</trackback:ping><description><![CDATA[&nbsp; heap（栈）是一种线形集合.其添加和删除元素应在同一段完成，按照先进后出的方式处理。<br>stack（堆）是栈的一个组成元素。<br><br><br> <img src ="http://www.cnitblog.com/youyou/aggbug/31352.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/youyou/" target="_blank">.柚柚之Blog.</a> 2007-08-06 20:08 <a href="http://www.cnitblog.com/youyou/archive/2007/08/06/31352.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>作为程序员的四大忌.</title><link>http://www.cnitblog.com/youyou/archive/2007/08/03/31226.html</link><dc:creator>.柚柚之Blog.</dc:creator><author>.柚柚之Blog.</author><pubDate>Fri, 03 Aug 2007 15:56:00 GMT</pubDate><guid>http://www.cnitblog.com/youyou/archive/2007/08/03/31226.html</guid><wfw:comment>http://www.cnitblog.com/youyou/comments/31226.html</wfw:comment><comments>http://www.cnitblog.com/youyou/archive/2007/08/03/31226.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/youyou/comments/commentRss/31226.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/youyou/services/trackbacks/31226.html</trackback:ping><description><![CDATA[一忌：轻易言败，没有自信<br><br>　　没有永不放弃精神的程序员，只是一个有程序员名号的假程序员。一个真正的程序员，知道在程序设计的过程中，可能会遇到不计其数的困难和问题，可能有极多的挫折和失败，而成功只有一次。<br><br>　　就为解决一个问题，我们可能连续十几甚至几十小时的坐在计算机前不停的工作。一个问题解决了，可能又有其它的问题出现。而你要是不能坚持下来，可能从前的一切努力都流失了。轻易言败的人请不要做程序员，你不可能成功。执着是最可贵的。<br><br>　　执着的程序员都是相信自己的人，每时每刻都会鼓励自己，你做的出来，你能解决，你会成功。这样他才能坚持下去。<br><br>二忌：浮华不实，自满自大<br><br>　　夸夸奇谈的人不是优秀的程序员。整个程序设计的过程就是一个研究学习，应用，再研究学习，再应用的过程。一名优秀的程序员决不会认为自己足够好了，不需要再提高了。自满自足的人不会是好程序员，会很快落后以致落伍。所以越是优秀的程序员越是感觉自己懂得少，不会在人前故意卖弄，这并不是故作谦虚，而是实实在在的感受，亲自体会才能明白。<br><br>　　浮华的程序员会不懂装懂，不停的强调语言的优劣，平台的好坏。追求所谓最新最时尚的技术，停留在表面问题上。或假做深沉，用不适合的方式做不适合的事情。就像孔已己一样，以为知道"茴"字有四种写法就是学问。最后是简单的作不好，困难的也作不好。<br><br>三忌：死气沉沉，不求甚解<br><br>　　优秀的程序员是充满激情和活力的程序员。求知欲和创造欲是原动力。有求知欲你才能不停的学习，有创造欲你才能不停的超越自己。死气沉沉的程序员已经对程序设计失去了兴趣，很快就会主动或被迫离开。<br><br>　　创造不是指你要发明什么别人不知道的技术或方法，而是说不能仅仅知道怎么做，还要知道为什么这样做。之后你才能创造，其实程序设计的整个过程就是创造的过程。<br><br>四忌：强调客观，忽略自身<br><br>　　很多程序员都是在失败的时候强调客观因素，而优秀的程序员的程序员都是先反省自己。要明白自己缺陷，再努力去学习。没有人事事都做的成功，也没有人生来就什么会做。所以失败了，多想想自身的原因，这样你才会不停的进步，而不是留在原地抱怨<br> <img src ="http://www.cnitblog.com/youyou/aggbug/31226.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/youyou/" target="_blank">.柚柚之Blog.</a> 2007-08-03 23:56 <a href="http://www.cnitblog.com/youyou/archive/2007/08/03/31226.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>