替换MySQL无法正常工作(表结构问题?)

时间:2014-07-08 18:40:13

标签: mysql sql

我有一个包含两列的简单表:idmember_id

我有一个脚本设置来更新该表做这样的事情......
REPLACE INTO AT_infinite_math_visibility VALUES(97, 16);

除非我将其中一列指定为"主键"否则它似乎无法工作。但是,输入此表的数据可能最终会像这样......

第一排:97,16
第二排:97,22
第三排:104,16
第四排:104,74

那么,我应该如何设置这个表...
1.)新更新时没有重复的条目。
2.)如果新记录不是重复记录,请插入新记录。

1 个答案:

答案 0 :(得分:0)

替换有效,首先删除任何与您的唯一键冲突的内容,然后插入您请求的任何内容。

如果没有像主键那样的唯一键,它将只是一个昂贵的插入。

如果您不在两列上都不重复,只需将它们定义为主键

alter table AT_infinite_math_visibility add primary key (id, member_id);