<?php
mysql_query("INSERT INTO `users_badges` (`user_id`, `badge_id`, `badge_slot`) VALUES ('$my_id', 'VIP', '1')");
?>
我有这个代码在表格中插入一些东西,但每次如果你访问主页,它都会重复插入,所以我有6&#39; VIP&#39;而我应该有一个。
我应该在代码中做什么改变? - 如果你有'Badge_ID - VIP&#39;你不能再得到它了。
答案 0 :(得分:1)
据推测,您不希望行具有相同的user_id
和badge_id
值。要防止这种情况,请创建一个唯一索引:
create unique index idx_users_badges_2 on users_badges(user_id, badge_id);
这将防止重复的行。 insert
会生成错误。您可以忽略代码中的错误,也可以使用insert ignore
或insert . . . on duplicate key update
阻止错误。