一对一关系 | 学习笔记

简介: 快速学习一对一关系。

开发者学堂课程【Servlet 入门:一对一关系】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/36/detail/814


一对一关系


内容介绍

一、一对一关系


一、一对一关系

数据库一对一关系

在表中建立一对一关系比较特殊,需要让其中一张表的主键,即是主键又是外键。create table husband(

hid int PRIMARY KEY,

);

create table wife(

wid int PRIMARY KEY,

ADD CONSTRAINT fk_wife_wid FOREIGN KEY(wid) REFERENCES husband(hid)

其中 wife 表的 yid 即是主键,又是相对 husband 表的外键!

husband.hid 是主键,不能重复!

wife.wid 是主键,不能重复,又是外键,必须来自 husband.hid

所以如果在 wife 表中有一条记录的 wid 1,那么 wife 表中的其他记录的 wid 就不能再是1了,因为它是主键;

同时在 husband.hid 中必须存在1这个值,因为 wid 是外键。这就完成了一对一关系。

hasband wife 举例

CREATE TRBLE hasband(

hid INT PRIMARY KEY AUTO_INCREMENT,

hname VARCHAR(50)

);

ALTER TABIE hashand

RENAME TO hasband  

INSERT INTO hasband VALUES (NULL,'刘备');

INSERT INTO hasband VALUES (NULL,'关羽');

INSERT INTO hasband VALUES (NULL,'张飞');  

SELECT * FROM hasband

CREATE TABLE wife(

W1f INT PRIMARY KEY AUTO_INCREMENT,

wname VARCHAR(50),

CONSTRAINT fk_wife_hasband FOREIGN KEY(wid) REFERENCES hasband(hid)

);

/

wid:

1.非空

2.唯一

3.引用hid

*/

INSERT INTO wife VALUES(1,'杨贵妃')

INSERT INTO wife VALUES(2,'妲己');

SELECT * FROM wife;

1.png呸、.png

相关文章
|
5月前
|
Java 程序员 C#
程序员必知:UML关联聚合组合关系
程序员必知:UML关联聚合组合关系
56 0
|
5月前
|
存储 安全 数据库
Django ORM深度游:探索多对一、一对一与多对多数据关系的奥秘与实践
Django ORM深度游:探索多对一、一对一与多对多数据关系的奥秘与实践
|
6月前
|
开发框架 .NET C#
浅谈c和c++和c#之间的关系
浅谈c和c++和c#之间的关系
81 0
|
SQL 物联网 数据库
关系模型知识点总结(2)—— 关系完整性约束&关系操作基础
关系模型应提供定义和检验这类完整性机制,以便用统一的系统方法处理他们,而不需要由应用程序承担
311 0
关系模型知识点总结(2)—— 关系完整性约束&关系操作基础
|
负载均衡 开发者
连接与关系 | 学习笔记
快速学习连接与关系
101 0
连接与关系  |  学习笔记
|
容器
getChildFragmentManager和getsupportFragmentManager和getFragmentManager的关系
getChildFragmentManager和getsupportFragmentManager和getFragmentManager的关系
|
负载均衡 数据处理 开发者
连接与关系总结 | 学习笔记
快速学习连接与关系总结
类之间的关系共为6种关系
类之间的关系共为6种关系
618 0
|
uml
类和类之间的关系(1)
类和类之间的关系(1)
122 0
类和类之间的关系(1)