“每个表只能有一个 IDENTITY 列”
为什么会这样呢?以车辆为例,存在唯一的底盘号以及唯一的车牌号。为了描述这个场景sql服务器我们需要对其中一个列进行自定义实现。相反,在Oracle一张桌子上可以有任意数量的序列。为什么对 IDENTITY 列有限制,有什么具体原因吗?
拥有车辆模式的场景是想象出来的,我质疑自己为什么对身份列有限制。
SQL Server 中的标识列具有种子和自动增量。如果我们知道第一个 id 列的值,我们总是可以计算出第二个假设的 id 值应该是什么。
例如如果这是合法的语法
create table #foo
(
bar int identity(1,10),
baz int identity(1000,1)
)
我们不需要存储 baz,因为它可以从 bar 计算出来,如下所示。
baz = 1000 + (bar-1)/10
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)