可能重複:
Best way to avoid duplicate entry into mysql databasemysql如何防止重複進入數據庫
這是我的查詢,添加用戶以及拒絕他們,如果已存在具有相同名稱的用戶在用戶表中:
insert into user values(?, ?, ?, ?) select * from user
where NOT EXISTS(select * from user where user.username = ?);
可能重複:
Best way to avoid duplicate entry into mysql databasemysql如何防止重複進入數據庫
這是我的查詢,添加用戶以及拒絕他們,如果已存在具有相同名稱的用戶在用戶表中:
insert into user values(?, ?, ?, ?) select * from user
where NOT EXISTS(select * from user where user.username = ?);
只需使用INSERT IGNORE
。如果在唯一列中有重複,則不會發生任何情況。
不錯的夥伴..... –
@downvoter你能否留下評論解釋我錯了什麼?這樣我可以修復它。謝謝! –
爲什麼不將用戶名定義爲主鍵,如果它應該是唯一的?
我想你的意思是相同的用戶名,因爲名稱可以是相同的。
所以儘量使用這個,看看
INSERT INTO user (column1, column2, column3,...)
VALUES (value1, value2, value3,...)
WHERE NOT EXISTS(
SELECT username FROM user)
,如果你的意思是名字,只是通過用戶名更換名
你沒有看到這個:: http://stackoverflow.com/questions/2219786/best- way-to-avoid-duplicate-entry-into-mysql-database –
@Sudhir這就是關閉票的原因。 –
同名或同名用戶名? –