0
点赞
收藏
分享

微信扫一扫

Sqlserver 主外键约束


​​ Sqlserver 高级基础 约束整理​​ 上一篇

主外键约束

主外键约束 的目的 我感觉最有用的还是 级联删除

主键删除了  子键所有数据都被删除

设置

俩个表 一个TJ表  一个TS表 TS 为主表 里面存人物信息 TJ存分数信息 主键设置 不在阐述 在我上面博客里有

Sqlserver 主外键约束_外键

右击子表的关联ID  点击关系

Sqlserver 主外键约束_主键_02

还是 新增 改名 点击表与列规范

Sqlserver 主外键约束_外键_03

选择主键 ID 和外键对应的键  一定要保证 俩个数据类型一致

Sqlserver 主外键约束_Sqlserver_04

关系 选择 级联 这样删除的时候可以一起删除 一会会有效果

Sqlserver 主外键约束_主键_05

设置完后 我们左侧 TJ 就会有 一个外键

Sqlserver 主外键约束_Sqlserver_06

现在俩个标的关系已经建立 如果成绩表 我们录入一个不存在ID 就录入不进去

现在表里只有一个ID为1 的张三 我们录入一个STID为2 在成绩表里

Sqlserver 主外键约束_Sqlserver_07

不要管字段 都是我瞎写的   看值 没进去 把~ 我们改成1 就可以了

Sqlserver 主外键约束_外键_08

Sqlserver 主外键约束_Sqlserver_09

现在我们 删除掉主表里的ID为1的值 看一下 子表的数据

看一下 我并没有写删除TJ的数据 但是也被删除了

Sqlserver 主外键约束_Sqlserver_10

在sqlserver 中 还有一个很便利的增加主外键的方式

这就是 数据库关系图 和做E-R一样

Sqlserver 主外键约束_数据_11

这里可以很方便的对 主外键进行绑定 删除 调整

Sqlserver 主外键约束_数据_12

当然 怎么在代码里创建 可以右击我们刚才创建好的子健 看来代码

Sqlserver 主外键约束_主键_13

USE [testDB62]
GO

ALTER TABLE [dbo].[TJ] WITH CHECK ADD CONSTRAINT [FK_TJ_TS] FOREIGN KEY([TSID])
REFERENCES [dbo].[TS] ([ID])
ON DELETE CASCADE
GO

ALTER TABLE [dbo].[TJ] CHECK CONSTRAINT [FK_TJ_TS]
GO

到这里 结束 ~

Sqlserver 主外键约束_数据_14

举报

相关推荐

0 条评论