但把字段ID设为主键后  就不允许ID为重复的值了,
数据库做到不让重复ID的记录出现
是不是在插入或更新记录的时候 扫描一遍所有的ID 然后确认插入或更新?如果是这样的话
是不是 主键可以当作非聚集索引用?
就是设置ID为主键以后 就没必要设一个只有ID的索引了?

解决方案 »

  1.   

    在MySQL中 某字段作为主键,那么它也就自动成为索引字段了
      

  2.   

    我说的是DBMS底层是怎么实现的
    mssql据说索引是B树
    mysql是什么呢
    B树的KEY他是取什么呢,如果字段存储的是字符串的话
      

  3.   


    既然你问了这么多,我也来说两句吧,
    DBMS底层对索引的实现方式有多种,B树,可扩展Hash表等等,以B树最为常见通用。
    如何保证主键的不重复,没有特殊的办法,
    都是通过查找,如果找到已经存在相同的键值,则插入(或更新)失败,否则插入新的(主)键值。一般的键,则没有此限制。如果,你仍然感 兴趣,不妨看看数据结构里的B-树, B+树,再查查可扩展Hash表,线性hash表的实现技术。
      

  4.   

    主键就是一个唯一的但是不为NULL的键。所以用普通键的理论就可以了解释了。