【发布时间】:2017-09-23 21:38:01
【问题描述】:
我能得到一些建议吗,如何为插入创建机制,以检查是否使用了 PK 的值? 如果它没有在表中使用,它将插入带有数字的行。如果它被使用,它将增加值并检查下一个值是否被使用。等等……
【问题讨论】:
我能得到一些建议吗,如何为插入创建机制,以检查是否使用了 PK 的值? 如果它没有在表中使用,它将插入带有数字的行。如果它被使用,它将增加值并检查下一个值是否被使用。等等……
【问题讨论】:
评论太长了。
您需要数据库中的触发器才能正确实现此功能。如果您尝试在应用程序层执行此操作,那么您将在多客户端环境中受到竞争条件的影响。
在 Oracle 中,我建议只对主键使用自动生成的列。不要尝试自己插入。在 Oracle 12C 中,您可以使用generated always as 直接定义它。在早期版本中,您需要使用序列来定义数字并使用触发器来分配它们。
【讨论】: