我有许多要插入到MYSQL表中的记录。我正在使用PHP。其中一些是重复项。我正在使用redbeanPHP orm(http://redbeanphp.com/)
我的策略是使用由2列(FIELD A和DUPLICATENUMBER)组成的复合UNIQUE约束。创建每个记录时,DUPLICATENUMBER = 0。
然后尝试如下插入记录:
try {
$id = R::store($record);
} catch (Exception $exc) {
---------------
如果尝试插入重复项,则会生成错误。然后,我想将DUPLICATENUMBER递增1,然后重新插入。这次,如果必须将FIELD A和DUPLICATENUMBER都设置为相同以使唯一约束保持完整,则应该工作,因为递增DUPLICATENUMBER会破坏唯一性。我应该发出什么MYSQL命令来设置此组合的唯一约束?
提前致谢,
法案
提前致谢,
最佳答案
您可以选择具有匹配的FIELD A的记录数,并将其设置为DUPLICATENUMBER。