为什么oracle没有主键的自动增量功能?

前端之家收集整理的这篇文章主要介绍了为什么oracle没有主键的自动增量功能?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
有人可以启发为什么oracle不支持主键的自动增量功能

我知道在序列和触发器的帮助下可以实现相同的功能,但是为什么oracle没有引入将在内部创建序列和触发器的autoincrement关键字.我打赌在oracle的人肯定会考虑这个.必须有一些理由不提供这个功能.有什么想法吗?

它可能只是术语.
‘AUTOINCREMENT’表示记录“102”和“104”之间将创建该记录“103”.在集群环境中,序列不一定是这种情况.一个节点可以插入“100”,“101”,“102”,而另一个节点插入“110”,“111”,“112”,因此记录“无序”. [当然,’序列’一词具有相同的含义.

如果您选择不遵循序列模型,则会引入锁定和序列化问题.在确定下一个值之前,您是否强制插入等待另一个插入的提交/回滚,或者如果事务回滚,则您将获得键的空白.

然后,如果有人想要在表中插入一个具有该字段的特定值的行(例如,它是允许的,还是像DEFAULT一样工作)或者有人尝试更新它,那么就会遇到什么问题.如果有人插入’101′,自动增量“跳转”到“102”还是冒着尝试重复的值.

它可以影响其IMP实用程序和直接路径写入以及向后兼容性.

我不是说不能完成.但我怀疑最终有人看过它,并决定他们可以在其他地方更好的开发时间.

猜你在找的Oracle相关文章