日期:2014-05-16  浏览次数:20427 次

数据库的优化,包括:oracle,mysql.
数据库设计:良好的数据库设计是优化代码的条件,是数据库优化的标准,设计比优化更重要.
    主要分为四个部分:
    #1#:数据库设计过程 :
       第一步:要分析用户的应用需求.
       第二步:根据用户需求,写出数据字典:它是关于数据库中数据的描述,即元数据,不是元数据本身.
       第三步:对用户的需求进行综合,归纳与抽象,形成一个独立于具体DBMS的概念模型.也就是根据数据字典去画E-R<Entity-Relation>图.
       第四步:定义实体--->E-R图是怎么画的,画E-R图的过程.
       第五步:定义联系(也就是二元联系,1~N,N~1,1~1,N~N).
     
    #2#:数据库设计范式  ###***重点*****###
       关联数据库设计之时是要遵守一定的规则,也就是设计范式.
       在数据库中的设计范式主要有五种:
       第一范式(1NF):
            对于表中每一行中,都必需要有唯一的列,且每一列的值具有原子性<不可分割>. 也就是说我们要设主键.***
      
       第二范式(2NF): 
          非主键列的活动必需完全依赖于整个主键,如查找,更新必须得依赖于主键
          例:在Hibernate中我们只能依赖于主键进行修改,如果依赖于非主键修改会报错. 
     
       第三范式(3NF):
           非主键列互不依赖.
           也就是说当一个表依赖到另外一张表的数据时,不能依赖于不是主键的列.
           例:建立关联时,我们只能用另外一张表的主键进行建立关联.
     
      第四范式(4NF):
      
       第五范式(5NF):
           尽量少用,也就是用空间去换时间,第五范式又叫无null范式样.
           将表分割成尽可能少的块,为了排除在表中所有的冗余.
           也就是说,当一个表里有一个字段只有一个人有数据时,这样这个字段没有数据的人置为null. 这时候就要考虑到要用另外一张表来保存这个数据.
   
    #3#:数据库设计技巧(主要分为六个技巧)
            技巧一: 需求分析技巧
              技巧二: 表设计技巧
                      每个表中都应该加入几个有用的字段,如:创建日期,创建用户等.
            技巧三: 字段设计技巧
            
              技巧四: 键设计技巧
            
              技巧五: 索引设计技巧
            
              技巧六: 数据完整性设计技巧
          
      
  
    #4#:数据库设计规范

oracle数据库优化:

一:一些最常用的语法:
    1:大小写
    2:exist > in > or
    3:列上计算问题,列操作尽量置于操作符右边,少用列格式转换,
       不要用到列计算,海量查询时少用格式转换,这样使得对全表扫描.
            查询海量数据是,可以使用optimizer hints(ORACLE)
            例如/*+ORDERED */
            如
            SELECT /*+ FULL(EMP) */ E.ENAME
  &nbs