在数据库开发中,数据表的主键是一个非常重要的字段,它决定该表的数据唯一性,以及和其它表建立联系的一个桥梁。
    现在关于定义表主键的数据类型的时候基本分为两大类型:自增字段,以及字符编码。问问大家,这两种方法,你更喜欢那种,各有什么利弊?
    我的观点:
    自增字段的优点,数据库自行维护,在通过外键关联的时候,不存在修改主键值的问题,不需要级联更新,减轻数据级联更新负担。字段为数字型,节约数据库数据空间。
    缺点,三层开发的时候维护自增字段,有一定难度,该字段在数据库开发的时候,可能会增加某些编程难度。
    字符编码优点,直观,容易理解,自行控制比较方便。
    缺点,修改该主键字段,副表需级联更新,数据大的情况下,数据库负担很重,字段长度比较长,当多个表关联该主键的时候,数据空间浪费大。

解决方案 »

  1.   

    现在你可以用GUID子端来作为主键。
    GUID是128位的数据,如果根据网卡ID和时间来生成这个ID的话,一百年之内不会有重复的ID
      

  2.   

    自增字段好象好些,由数据库自己维护了,开发的时候如果用ADO,也很方便的.
      

  3.   

    自增字段好象好些,由数据库自己维护了,开发的时候如果用ADO,也很方便的.
      

  4.   

    自增字段好象好些,由数据库自己维护了,开发的时候如果用ADO,也很方便的.
      

  5.   

    自增字段好象好些,由数据库自己维护了,开发的时候如果用ADO,也很方便的.
      

  6.   

    GUID是目前主键的新方法,但不是每个地方适用,关键在于它128位长,
    太长了,如果你的表中有100万条记录,那它需要多增加多少数据库空间,还要把它的索引空间考虑进去。适合记录少的情况下。