我已经做过这样的事情才能使用on duplicate key update:
on duplicate key update
CREATE UNIQUE INDEX blah on mytable(my_col_to_make_an_index);
而且效果还不错。我只是不确定索引名称的目的-在这种情况下为“ blah”。我读过的东西说要用一个,但我不知道为什么。它似乎没有用在查询中,尽管如果导出架构可以看到它。
那么…索引名称的作用是什么?如果它有助于最终的行CREATE TABLE看起来像:
CREATE TABLE
UNIQUE KEY `clothID` (`clothID`)
索引名称用于引用索引以用于将来的命令。像掉落指数。
http://dev.mysql.com/doc/refman/5.0/en/drop- index.html
试想一下像表名这样的索引名。您可以轻松地创建一个名为“ blah”的表。
CREATE TABLE blah (f1 int);
但是“ blah”对于将来的参考不是很有帮助。保持一致。就像是
CREATE UNIQUE INDEX field_uniq on mytable(field);
要么
CREATE INDEX field1_field2_inx on mytable(field1, field2);