Sqlserver 高级基础 约束整理 上一篇
主外键约束
主外键约束 的目的 我感觉最有用的还是 级联删除
主键删除了 子键所有数据都被删除
设置
俩个表 一个TJ表 一个TS表 TS 为主表 里面存人物信息 TJ存分数信息 主键设置 不在阐述 在我上面博客里有
右击子表的关联ID 点击关系
还是 新增 改名 点击表与列规范
选择主键 ID 和外键对应的键 一定要保证 俩个数据类型一致
关系 选择 级联 这样删除的时候可以一起删除 一会会有效果
设置完后 我们左侧 TJ 就会有 一个外键
现在俩个标的关系已经建立 如果成绩表 我们录入一个不存在ID 就录入不进去
现在表里只有一个ID为1 的张三 我们录入一个STID为2 在成绩表里
不要管字段 都是我瞎写的 看值 没进去 把~ 我们改成1 就可以了
现在我们 删除掉主表里的ID为1的值 看一下 子表的数据
看一下 我并没有写删除TJ的数据 但是也被删除了
在sqlserver 中 还有一个很便利的增加主外键的方式
这就是 数据库关系图 和做E-R一样
这里可以很方便的对 主外键进行绑定 删除 调整
当然 怎么在代码里创建 可以右击我们刚才创建好的子健 看来代码
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 主外键约束
发布评论