日期:2014-05-19  浏览次数:20386 次

外键关联的问题,简单
我在student表中有一个字段是num,work表中也有num的字段,work表是外键表,那么怎么将这两个num关联起来,那句代码是怎么写的,请指教。还有如果不通过写代码,直接在sql中的关系图中该怎么做,我试了下,但是不行,请知道我一下

------解决方案--------------------
我在student表中有一个字段是num,work表中也有num的字段,work表是外键表,那么怎么将这两个num关联起来,
………………………………………………………………………………

你先弄明白基础的数据库知识:

两个数据表要进行所谓的“外键”关联,这个“外键”对关联的数据表(被引用的表)而言一定是它的主键字段。
结合你的例子来说:
1.student表(引用表)中有一个字段是num(num不是student表的主键),work表是外键表(被引用表),那么num一定要是work表的主键字段,否则无法关联;
2.或者还可以这样理解:student表(被引用表)中有一个字段是num(num是student表的主键),work表是引用表,那么num可以不是work表的主键字段,这样关联是可以的;

你的数据表到底是哪一种情况呢。如果num既不是student表的主键,也不是work表的主键,那么是不能用该字段来直接关联这两个表的。如果要关联,那么需要建立第3张表,这第3张表的主键是num,然后student和work来引用这第3张表。