表一
ID (自动ID,PK)
departmentID
name
address表二
ID ((自动ID,PK))
codeID
departmentID
num表一 departmentID 和 表二departmentID如何做一致性约束,除了触发器还有别的好得方法吗? (现在想使用自动ID作为主健,所以主外键约束不好使)

解决方案 »

  1.   

    表一 departmentID 和 表二departmentID如何做一致性约束,除了触发器还有别的好得方法吗? (现在想使用自动ID作为主健,所以主外键约束不好使)
    没有谁说一定要主键,才能外键,你可以把TB1的设成唯一约束,TB2的参考就行了
      

  2.   

    表1 departmentID设置唯一索引
    表2 departmentID设置外键自动增长字段在这里貌似没有必要性
      

  3.   

    先要求录入表一的资料,将表一的departmentID设为表二的外键
      

  4.   

    可以设置自增id
    但是主键和外键不一定要用自增id
      

  5.   

    表1或表2的departmentID做个UNIQUE约束(比如表1),然后表2的departmentID作为表1 departmentID的外键就可以了,否则是有可能无法创建外键,再者再创建的时候加上with nocheck(如果表中已有数据的话)
      

  6.   

    表1的departmentID设置唯一性约束,然后和表2的departmentID设置为外键。至于表2的departmentID要不要设置唯一性约束,关键看表2和表1的关系是多对一还是一对一了,如果一对一,表2的departmentID也设置下唯一性约束,否则就不用了。