也不一定非要每张表一个ID.在ORACLE中有一些表(往往是从表)就没有ID这个字段.
不过你的主表一定要建一个ID.做你的主键.
建ID的作用是提供唯一键用的,可以用作从表的外键.
这样在查询的时候才能形成试图.
因为一般来说,数据库中建表尽量使其满足三范式.
把一个表的数据划分在多个表中.然后通过创建视图再对所需要的字段
进行查询,插入等操作.如果没有ID,通过其他使用的字段,如用户表中的
name做主键,往往造成后来表不好扩展,取值有固有的限制等不良因素.
所以新建一个ID来确定你的唯一键.大概就想到这些:)

解决方案 »

  1.   

    楼主这里说的ID应该相当是主键的意思。
    该字段主要是用来唯一区分表中的某一条记录。也就是说通过这个ID能唯一确定表中的某一条记录。
    也可以通过该字段与其它表关联进行多表查询当然未必每张表都需要这种ID,只是有比没有要好。
      

  2.   

    不是每张表都要有 ID字段,不过主表如果有能担当ID角色的字段也就不用建,否则最好建一个
      

  3.   

    "不过你的主表一定要建一个ID.做你的主键"
    ======================================
    不同意。
    很多表都可以有一个字段,或者多个字段表示唯一的,可以用来做主键
    单纯的ID编号,我觉得不是一定要用的
      

  4.   

    to:yxxx(小孬) 
    为什么?
    如果一张学生表,学号肯定是唯一的,为什么不用学号做主键,而另外去设一个ID?