Mysql 插入忽略元';不要忽视

Mysql 插入忽略元';不要忽视,mysql,sql,insert,exists,Mysql,Sql,Insert,Exists,此代码:将始终插入行,从不检测是否存在 $r = mysql_query("INSERT IGNORE INTO facebook (uid,fid) VALUES ('".$_SESSION['id']."','".$persone['id']."')") or die(mysql_error()); 为什么? 编辑:请不要,输入值始终相同插入忽略仅适用于主键字段。如果您的facebook表没有设置主键,您可以这样做: alter table facebook add primary ke

此代码:将始终插入行,从不检测是否存在

$r =  mysql_query("INSERT IGNORE INTO facebook (uid,fid) VALUES ('".$_SESSION['id']."','".$persone['id']."')") or die(mysql_error());
为什么?


编辑:请不要,输入值始终相同

插入忽略仅适用于主键字段。如果您的
facebook
表没有设置主键,您可以这样做:

alter table facebook add primary key (uid)

在此之后,
INSERT IGNORE
将不会插入重复的行。

INSERT IGNORE
仅适用于主键字段。如果您的
facebook
表没有设置主键,您可以这样做:

alter table facebook add primary key (uid)

在此之后,
INSERT IGNORE
将不会插入重复的行。

facebook表上的主键是什么<代码>插入忽略仅检查主键。我明白了。。那么如何将uid转换为主键呢@Kosta facebook表上的主键是什么<代码>插入忽略仅检查主键。我明白了。。那么如何将uid转换为主键呢@Kostat我想问题是我不想防止重复键,而是重复组合(或行),然后您可以使用
更改表facebook ADD primary key(uid,fid)
将两列放入主键,或者在插入新行之前检查行是否存在。请注意,如果已经定义了主键,则需要先使用
ALTER TABLE facebook drop primary key
删除该键,然后添加新的主键。报告了以下错误:定义了多个主键如我所说,您需要用我编写的代码删除上一个主键,然后再次添加主键。我想问题是,我不想阻止重复的键,而是重复的组合(或行),然后您可以使用
ALTER TABLE facebook add primary key(uid,fid)
,,或者在插入新行之前检查行是否存在。请注意,如果已经定义了主键,则需要先使用
ALTER TABLE facebook drop primary key
删除该主键,然后添加新的主键。报告了以下错误:定义了多个主键如我所说,需要使用我编写的代码删除以前的主键,然后再次添加主键。