社区
MS-SQL Server
帖子详情
表选用一个自动ID作为主健,如何进行表之间的一致性约束
fengling2001
2011-06-03 09:03:42
表一
ID (自动ID,PK)
departmentID
name
address
表二
ID ((自动ID,PK))
codeID
departmentID
num
表一 departmentID 和 表二departmentID如何做一致性约束,除了触发器还有别的好得方法吗? (现在想使用自动ID作为主健,所以主外键约束不好使)
...全文
95
10
打赏
收藏
表选用一个自动ID作为主健,如何进行表之间的一致性约束
表一 ID (自动ID,PK) departmentID name address 表二 ID ((自动ID,PK)) codeID departmentID num 表一 departmentID 和 表二departmentID如何做一致性约束,除了触发器还有别的好得方法吗? (现在想使用自动ID作为主健,所以主外键约束不好使)
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
BetterMe
2011-06-03
打赏
举报
回复
[Quote=引用楼主 fengling2001 的回复:]
表一
ID (自动ID,PK)
departmentID
name
address
表二
ID ((自动ID,PK))
codeID
departmentID
num
表一 departmentID 和 表二departmentID如何做一致性约束,除了触发器还有别的好得方法吗? (现在想使用自动ID作为主健,所以主外键约束不好使)
[/Quote]
表1或表2的departmentID做个UNIQUE约束(比如表1),然后表2的departmentID作为表1 departmentID的外键就可以了,否则是有可能无法创建外键,再者再创建的时候加上with nocheck(如果表中已有数据的话)
--小F--
2011-06-03
打赏
举报
回复
可以设置自增id
但是主键和外键不一定要用自增id
mingpei0703
2011-06-03
打赏
举报
回复
[Quote=引用 4 楼 jyh070207 的回复:]
先要求录入表一的资料,将表一的departmentID设为表二的外键
[/Quote]
对于一致性,这是最简单、常用的方法
lds1ove
2011-06-03
打赏
举报
回复
出了id 在家一个code
jyh070207
2011-06-03
打赏
举报
回复
先要求录入表一的资料,将表一的departmentID设为表二的外键
BigInt
2011-06-03
打赏
举报
回复
表1 departmentID设置唯一索引
表2 departmentID设置外键
自动增长字段在这里貌似没有必要性
君_洛洛
2011-06-03
打赏
举报
回复
表一 departmentID 和 表二departmentID如何做一致性约束,除了触发器还有别的好得方法吗? (现在想使用自动ID作为主健,所以主外键约束不好使)
没有谁说一定要主键,才能外键,你可以把TB1的设成唯一约束,TB2的参考就行了
BigInt
2011-06-03
打赏
举报
回复
设置外键不就可以了吗
打一壶酱油
2011-06-03
打赏
举报
回复
这个。
gogodiy
2011-06-03
打赏
举报
回复
表1的departmentID设置唯一性约束,然后和表2的departmentID设置为外键。至于表2的departmentID要不要设置唯一性约束,关键看表2和表1的关系是多对一还是一对一了,如果一对一,表2的departmentID也设置下唯一性约束,否则就不用了。
软件测试之robotframework
自动
化测试框架从入门到精通
本课程
选用
eclipse编辑工具来编写robotframework测试用例,会带领大家学习robotframework测试用例编写语法、常用关键字使用、关键字驱动思想、web/app/接口
自动
化第三方库使用等。 学完之后,你将实现:1...
分布式系统的
一致性
问题(汇总)
保证分布式系统数据
一致性
的6种方案 问题的起源 在电商等业务中,系统一般由多个独立的服务组成,如何解决分布式调用时候数据的
一致性
? 具体业务场景如下,比如
一个
业务操作,如果同时调用服务 A、B、C,需要满足要么同时成功;要么同时失败。A、B、C 可能是多个不同部门开发、部署在不同服务器上的远程服务。 在分布式系统来说,如果不想牺牲
一致性
,CAP 理论告诉我们只能放弃可用性,这显然不能接受...
字节三面:MySQL中六大
约束
你知道几个?一文带你详解MySQL
约束
问:
约束
存在的意义是什么?答:为防止错误的数据被插入到数据
表
,MySQL中定义了一些维护数据库完整性的规则;这些规则常称为
表
的
约束
是对数据准确性的一种提前控制例如:人员的姓名不能为空,人的年龄只能在0~150岁
之间
。
约束
可以对数据库中的数据
进行
保护。
约束
可以在建
表
的时候直接声明,也可以为已建好的
表
添加
约束
。如果定义了主键,那么InnoDB会使用主键作为聚簇索引如果没有定义主键,那么会使用第一非空的唯一索引(NOT NULL and UNIQUE INDEX)作为聚簇索引。
人大金仓 金仓数据库KingbaseES
约束
介绍
KingbaseES、
约束
数据类型是一种限制能够存储在
表
中数据类别的方法。但是对于很多应用来说,它们提供的
约束
太粗糙。例如,
一个
包含产品价格的列应该只接受正值。但是没有任何一种标准数据类型只接受正值,另
一个
问题是我们可能需要根据其他列或行来
约束
一个
列中的数据,所以,
约束
应运而生。
约束
是金仓数据库中提供的
自动
保持数据库完整性的一种方法,定义了可输入
表
或
表
的单个列中的数据的限制条件。如果存在违反
约束
的数据行为,行为会被
约束
终止。到目前为止,数据库允许我们在列和
表
上定义
约束
。
数据库
约束
-设计-多
表
查询-事务
1
约束
的概念:
约束
是作用于
表
中列上的规则,用于限制加入
表
的数据
约束
的存在保证了数据库中数据的正确性,有效性和完整性 2.
约束
的分类 (1)非空
约束
(关键字not null ):保证列中所有数据不能有null值 (2)唯一
约束
(关键字 unique ):保证类中所有数据各不相同 (3)主键
约束
(关键字primary key ):主键是一行数据的唯一标识,要求非空且唯一 ...
MS-SQL Server
34,594
社区成员
254,589
社区内容
发帖
与我相关
我的任务
MS-SQL Server
MS-SQL Server相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章