如果我使用软删除,我应该删除外键吗?

zx_*_*ing 4 mysql performance foreign-key

“ON UPDATE”场景从未发生在我的应用程序中。由于使用了软删除,“ON DELETE”级联和限制场景现在也不会发生。然后,我是否应该删除外键,因为当应用程序处于高并发工作负载时我遇到了死锁问题。

顺便说一句:如果子资源在创建子资源时有对它的引用(外键),我的应用程序还会验证父资源的存在

Jon*_*des 6

收下。外键的存在主要是为了确保子表中给出的值确实存在于父(外)表中。级联删除或更新通常是遥远的一秒。

这是一般情况;您的具体业务规则可能有所不同。