设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 2086|回复: 6
打印 上一主题 下一主题

[Access本身] access2003中表和表之间的关系有何用?

[复制链接]
跳转到指定楼层
1#
发表于 2004-3-22 21:34:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
高手们能不能问一下我在建表的时候根本没有定义表与表之间的关系,可是我觉得这并不影响我建查询,我就不懂表和表之间的关系有什么用

不好意识,一个低级的问题希望大家能够回答
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2004-3-23 23:27:00 | 只看该作者
我觉得在ACCESS中最难理解的可能就是这个了。
象在EXCEL中我们习惯将所有的数据放在一个表中,这样就用不着关系了。
但在ACCESS中,它建议我们分类型建表,所以需要用关系将各表关联起来。

点击这里给我发消息

3#
发表于 2004-3-24 07:36:00 | 只看该作者
以下是引用sql2828865在2004-3-22 13:33:48的发言:
高手们能不能问一下我在建表的时候根本没有定义表与表之间的关系,可是我觉得这并不影响我建查询,我就不懂表和表之间的关系有什么用

不好意识,一个低级的问题希望大家能够回答


ACCESS是一种按照关系数据库理论设计的一种数据库管理系统。

“我就不懂表和表之间的关系有什么用”
在这里,你所说的“关系”,就是一种约束,以及表与表之间对应关系。没有差,这不影响你建立查询,但是没有定义关系数据库,其数据完整性就得靠你自己用代码来维护,因此,这是一种低效的做法,也就没有体现关系数据库的优势,与EXCEL区别不大了。当然如果表与表之间没有必然的联系,强行加上关系,这肯定也不对。

举例:
在NORTHWIND.MDB中[订单]表与[订单明细]表,它们以两个表的“订单ID”建立一个一对多关系,并定义了实施参照完整性和级联删除相关记录。[订单]表的一条记录对应于[订单明细]表中的多条明细记录,此时如果删除[订单]表中的一条记录时,那么就会自动删除[订单明细]表中对应的多条明细记录。如果在关系中没有定义级联删除相关记录,如果这一记录对应了[订单明细]表中的多条明细记录,则不允许删除[订单]表中的这一条记录,若要删除这一记录,就必须先删除对应的明细记录,才能删除这条订单记录。这就维护数据的完整性。
如果没有定义关系,表中的记录就可以随意删除,那么就有可能明细记录找不到订单记录,因此就产生了数据孤儿,破坏了数据完整性。
4#
发表于 2004-3-24 17:32:00 | 只看该作者
3楼的是高手
要努力学习一下
[em02]
5#
发表于 2004-3-24 22:22:00 | 只看该作者
同意楼上的观点!!!
6#
 楼主| 发表于 2004-3-25 17:35:00 | 只看该作者
有些明白了,谢谢大家,特别感谢三楼的高手,大家都要像他学习
7#
发表于 2004-3-25 17:50:00 | 只看该作者
我罗嗦一句
Access的一个表只能有255个字段,当你的字段数超过这个范围,你就必须用到“关系”
来使多个表联系起来。
比如我在做一个调查表的时候,就用了4张表才满足了字段的要求。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-6-30 19:47 , Processed in 0.112878 second(s), 30 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表