0

primary key、およびそれの列がある場合、Mysqlで挿入無視を使用するにはどうすればよいですかauto increments

私は(主キーの自動インクリメント)を持っprimary keysており、自動インクリメントのない主キーです。iduserIdelmCol

そう:

id | userId | elmCol
--------------------
 1 | 1     | 1 //Allow
 2 | 1     | 2 //Allow
 3 | 1     | 3 //Allow
 4 | 1     | 1 //Not allowed if inserted again. I've put it in here just for example
 5 | 2     | 1 //Allow
 6 | 2     | 2 //Allow
 7 | 2     | 3 //Allow
 8 | 2     | 1 //Not allowed if inserted again. I've put it in here just for example

MySql と MyIsam 型テーブルを使用しています。このようなことをして使用できinsert ignoreますか?

4

1 に答える 1

3

INSERT IGNOREあなたのケースで が機能するには、 に UNIQUE インデックスを作成する必要があります(userId, elmCol)

ALTER TABLE table_name
ADD CONSTRAINT u_userId_elmCol 
    UNIQUE (userID, elmCol);

これがSQLFiddle のデモです。

于 2013-06-22T10:29:33.227 に答える