1

重複の可能性:
mysql データベースへの重複エントリを回避する最善の方法

これは、ユーザーを追加し、ユーザー テーブルに同じ名前のユーザーが既に存在する場合は拒否するクエリです。

insert into  user values(?, ?, ?, ? ) select * from user 
where NOT EXISTS(select * from user where user.username = ?);
4

3 に答える 3

1

を使用するだけINSERT IGNOREです。一意の列に重複がある場合、何も起こりません。

于 2012-12-03T11:48:53.140 に答える
1

名前が同じになる可能性があるため、同じユーザー名を意味していると思います。

これを使ってみてください

     INSERT INTO  user (column1, column2, column3,...)
     VALUES  (value1, value2, value3,...)
     WHERE NOT EXISTS(
     SELECT username FROM user)

name を意味する場合は、 name をユーザー名に置き換えてください

于 2012-12-03T12:02:57.717 に答える
0

ユーザー名が一意である必要がある場合、ユーザー名を主キーとして定義しないのはなぜですか?

于 2012-12-03T11:48:53.770 に答える