请问数据库中外键的用法

okli 2003-08-20 01:18:38
如题,设计数据库的时候各位一般在哪些情况下使用外键,一般如何使用?
...全文
353 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
okli 2003-08-20
  • 打赏
  • 举报
回复
能举个简单的一对多的例子么?

在我的代码里面,由于主键的值(在主表中)和外键的值(在相关表中)的关系有时候变动,哪我该如何保持数据一致性比较好?
hjb111 2003-08-20
  • 打赏
  • 举报
回复
联接相关基础表是用外键!
pengdali 2003-08-20
  • 打赏
  • 举报
回复
一对多关系
一对多关系是最常见的关系类型。在这种关系类型中,表 A 中的行可以在表 B 中有许多匹配行,但是表 B 中的行只能在表 A 中有一个匹配行。例如,publishers 表和 titles 表是一对多的关系:每一个出版商可出版许多书,但每一本书只能有一个出版商。

如果在相关列中只有一列是主键或具有唯一约束,则创建的是一对多关系。

一对多关系中的主键方由一个键 符号表示。关系中的外键方由一个无穷大 符号表示。

多对多关系
在多对多关系中,表 A 中的一行可与表 B 中的多行相匹配,反之亦然。通过定义称为连接表的第三方表创建这样的关系,该连接表的主键包括表 A 和表 B 中的外键。例如,authors 表和 titles 表是多对多关系,该关系通过从这些表中的每个表与 titleauthors 表的一对多关系定义。titleauthors 表的主键由 au_id 列(authors 表的主键)和 title_id 列(titles 表的主键)组成。

一对一关系
在一对一关系中,表 A 中的一行最多只能与表 B 中的一行相匹配,反之亦然。如果两个相关列都是主键或具有唯一约束,则创建的是一对一关系。

这种关系不常见,因为这种方式的大部分相关信息都在一个表中。使用一对一关系可以是为了:

分割一个含有许多列的表。


出于安全考虑而隔离表的某一部分。


存储可以很容易删除的临时数据,只需删除表即可删除这些数据。


存储只应用于主表子集的信息。
一对一关系的主键方由键 符号表示。外键方也由键 符号表示。



都要用到外键。
CrazyFor 2003-08-20
  • 打赏
  • 举报
回复
一对多关系中的"多"的表的字段一般都为外键.
pengdali 2003-08-20
  • 打赏
  • 举报
回复
一对多关系
一对多关系是最常见的关系类型。在这种关系类型中,表 A 中的行可以在表 B 中有许多匹配行,但是表 B 中的行只能在表 A 中有一个匹配行。例如,publishers 表和 titles 表是一对多的关系:每一个出版商可出版许多书,但每一本书只能有一个出版商。

如果在相关列中只有一列是主键或具有唯一约束,则创建的是一对多关系。

一对多关系中的主键方由一个键 符号表示。关系中的外键方由一个无穷大 符号表示。

多对多关系
在多对多关系中,表 A 中的一行可与表 B 中的多行相匹配,反之亦然。通过定义称为连接表的第三方表创建这样的关系,该连接表的主键包括表 A 和表 B 中的外键。例如,authors 表和 titles 表是多对多关系,该关系通过从这些表中的每个表与 titleauthors 表的一对多关系定义。titleauthors 表的主键由 au_id 列(authors 表的主键)和 title_id 列(titles 表的主键)组成。

一对一关系
在一对一关系中,表 A 中的一行最多只能与表 B 中的一行相匹配,反之亦然。如果两个相关列都是主键或具有唯一约束,则创建的是一对一关系。

这种关系不常见,因为这种方式的大部分相关信息都在一个表中。使用一对一关系可以是为了:

分割一个含有许多列的表。


出于安全考虑而隔离表的某一部分。


存储可以很容易删除的临时数据,只需删除表即可删除这些数据。


存储只应用于主表子集的信息。
一对一关系的主键方由键 符号表示。外键方也由键 符号表示。



都要用到外键。
包含了一些学术基础知识的学习文档。 文件夹结构如下: 图书馆讲座 ├── 学科资源专场 │   ├── 信息及电气学科文献资源利用方法概述.pdf │   ├── 化学及相关学科信息资源概述.pdf │   ├── 医学与生命科学类文献调研概述1.pdf │   ├── 医学与生命科学类文献调研概述2.pdf │   └── 商业经济类文献检索方法与技巧.pdf ├── 实用软件系列 │   ├── [emuch.net]Endnote8.rar │   ├── endnode │   │   └── Endnote X6 │   │   ├── ENX6Inst.msi │   │   └── License.dat │   ├── Excel初级操作与应用(适用于初学者)2.pdf │   ├── Excel初级操作与应用(适用于初学者).pdf │   ├── Excel初级操作与应用(适用于初学者)示例.rar │   ├── Excel实例与应用(适用于已经掌握基本操作者).pdf │   ├── Excel实例与应用(适用于已经掌握基本操作者)示例.rar │   ├── 如何使用“MS WORD”制作长文档2003.pdf │   ├── 如何使用“MS WORD”制作长文档2007.pdf │   └── 认识与利用个人文献管理软件.pdf ├── 常用资源系列 │   ├── Internet免费学术资源的检索与利用.pdf │   ├── Web of Science 引文数据库的检索与利用.pdf │   ├── Web of Science 引文数据库的检索与利用检索过程示例.pdf │   ├── 外专利数据库的检索与利用.pdf │   ├── 文电子图书数据库检索与利用.pdf │   ├── 文电子期刊数据库检索与利用.pdf │   ├── 利用图书馆资源提高外语能力和艺术修养.pdf │   ├── 国内外学位论文的检索与原文获取.pdf │   ├── 外文电子图书数据库检索与利用.pdf │   ├── 工程索引(EiCompendex)的检索与利用.pdf │   ├── 洞悉现在发现未来---Web of Knowledge平台对科研工作的推动作用.pdf │   ├── 统计数据、传记资料、术语定义检索案例分析与信息获取之道.pdf │   └── 统计数据、传记资料、术语定义检索案例分析与信息获取之道 讲稿.pdf ├── 研究指南系列 │   ├── review.pdf │   ├── 外文核心期刊介绍及投稿导引.pdf │   ├── 开题与立项前的文献调研概述(理工类).pdf │   ├── 开题与立项前的文献调研概述(理工类)(.pdf │   └── 开题与立项前的文献调研概述(社科类).pdf └── 综合利用资源 ├── 图书馆资源与服务导览.pdf ├── 搜索 关联 获取 ---“水木搜索”平台使用介绍.pdf └── 馆藏书刊检索与获取.pdf

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧