我正在使用Spring Boot,Maven,Hibernate和MySQL
我正在尝试确定是否更好地以编程方式查明数据库中是否已存在记录 - >表或者如果通过修改数据库表不允许重复这样做更好。
有什么建议吗?
答案 0 :(得分:0)
修改数据库以禁止重复。这是对表的唯一约束的目的。
为什么这是正确的解决方案?基本原因是竞争条件。当您施加唯一约束时,数据库会执行检查。如果您尝试在应用程序层中执行此操作,则检查和插入之间会有一小段时间。 。 。另一个线程可以在此期间插入相同的值。而且,你有一个副本。