请大家说说自已中意的原因

解决方案 »

  1.   

    bigint,速度快
    guid,移植性好
    一般项目中都用bigint,太灵活就是自找麻烦
      

  2.   

    自增型的int ID ,比较常见。
    GUID 太长了,查询速度也不如自增型的int ID,除非没办法,我一般不用GUID
      

  3.   

    自增型用得多一些.
    guid感觉效率差点,且太长,存储也会变大.但数据迁移比较方便.
      

  4.   

    字段大小: GUID: 16字节;  int:4字节(范围 0~~2的31次方-1)
    表连接: 如果两表关联,如果以自增为主键,先插入到主表获得id,再插入另一表; 若GUID为主键,先生成GUID,然后同时插入
    数据库移动: 如果在多数据库中移动数据,以自增为主键的数据需要被修改,从而确保唯一性; 而GUID的就不需要
      

  5.   

    看具体情况,一般用自增型,有时候,当id需要利用程序生成然后再插入记录的话我就会用guid,而且,我认为guid更安全一些,因为如果是自增型的话,别人很容易可以猜到你其他记录的id,这样的话就很容易成批的获取到其他的记录了,guid就可以防止这种情况,你猜不了第二条记录的id是什么!不过,guid的效率当然会低一点拉。。
      

  6.   

    guid对数据库中的复制,订阅.可以避免自增型的int ID重复的问题
      

  7.   

    这可以看出你的项目的设计者的层次。假设实例化一个“员工”对象,并且它有一个ID属性用来唯一代表此员工(用姓名、身份证号等任何业务概念都不行,都会要求修改),显然它是GUID型的,因为此时跟数据库完全可以不扯上什么关系。反过来说,看起来此设计者比较传统、学生气一点。
      

  8.   

    另外要说明一下,在SQL Server中,guid是128位二进制数(8个字节),不是什么字符串。虽然SQL Server也可以在T-SQL语句中自动将字符串转换为guid。
      

  9.   

    8个字节  -->  8个字(Word)
      

  10.   

    我到是自从认识GUID后,就一直用这东东,觉得很方便,到是没觉得它给我的程序带来很明显的效率上的问题。但到是比以前用INT型时方便多了。