| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 954 人关注过本帖
标题:[求助]关于怎样建立表与表之间的关系
只看楼主 加入收藏
fato
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2006-12-31
收藏
 问题点数:0 回复次数:4 
[求助]关于怎样建立表与表之间的关系
图片附件: 游客没有浏览图片的权限,请 登录注册


帮帮忙连一下这些表。小弟先谢了。
或者指导一下
搜索更多相关主题的帖子: 关系 指导 
2007-01-05 16:12
fato
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2006-12-31
收藏
得分:0 
图片下载就清楚了。麻烦各位
2007-01-05 16:13
ninggang
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:637
专家分:0
注 册:2006-11-1
收藏
得分:0 
呵呵,直接用鼠标在你所选的表的所在列拖动到另一张表的所在列就行了啊,不过,我认为:实际上没有必要建立外键,为什么呢?首先外键的作用是维护数据库的数据完整性,防止数据被乱修改,而且当要向带有外键的表修改数据时,总要先删除外键,才能修改,修改后还要在加上外键,那么有没有好的办法来避免这个繁杂的过程呢?答案是有的:
就是在修改带有外键表的时候,可以先查询在主键表中是否存在那一个字段,就行了,从效率上来说,这个问题,我不知道该怎么研究,如果对这方面有所研究的,也可以提出这方面的看法,呵呵

大家一起努力,共同打造未来!!
2007-01-06 14:08
bygg
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:乖乖的心中
等 级:版主
威 望:241
帖 子:13555
专家分:3076
注 册:2006-10-23
收藏
得分:0 
为什么没有必要建立外键??
我们假设有两张表:
table1 (student_id name sex age) student_id为主键
001 张三 男 20
002 李四 男 21

table2 (student_id chenji) student_id为主键,同时为table1的外键
001 198
002 167




如果我们删除了table1中的 001 的数据,那请问在table2中的 001 的成绩是什么意思???


飘过~~
2007-01-07 16:14
Kendy123456
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:62
帖 子:2720
专家分:0
注 册:2007-1-3
收藏
得分:0 

为什么要建立外键? 是为了维护数据的完整性!
以楼主的图例:
商品出库明细表和库存信息表之间就应该有外键 商品编码, 库存信息表为主表。 这样如果商品编码不在库存信息表中存在,即使你直接用代码方式写入商品出库表 也是不成功的。 这就保证了这2张表之间的数据不会出现冲突(库存里都没有的东西你出什么库!)

所以 这张图中的 供应商信息和供应商报价表之间要用供应商代码fk,订单和订单明细,采购和采购明细 销售和销售明细,两两间都要fk

如果商品信息这张表 是所有出入商品代码的汇总表的话,所有用到 商品编码 这个字段的表 都应该和 商品信息表 分别fk。

建立fk的充要条件就是: 只有主表中已经存在的条目,才允许在子表中存在。当你觉得2个表中的数据应该满足这种关系的时候 就建立外键


2007-01-08 15:25
快速回复:[求助]关于怎样建立表与表之间的关系
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020513 second(s), 11 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved