0
我正在設計一個用戶登錄的網站。在創建帳戶時,我檢查用戶名是否已經存在。是否應該在腳本內部進行檢查,還是應該將用戶名作爲表的主鍵?我正在使用MySQL和PHP。登錄到網站
因此,我應該編寫一個查詢數據庫的腳本來檢查提供的用戶名是否已被使用,或者我應該嘗試插入給定的用戶名並將該字段作爲主鍵,如果失敗則意味着用戶名正在使用中?
我正在設計一個用戶登錄的網站。在創建帳戶時,我檢查用戶名是否已經存在。是否應該在腳本內部進行檢查,還是應該將用戶名作爲表的主鍵?我正在使用MySQL和PHP。登錄到網站
因此,我應該編寫一個查詢數據庫的腳本來檢查提供的用戶名是否已被使用,或者我應該嘗試插入給定的用戶名並將該字段作爲主鍵,如果失敗則意味着用戶名正在使用中?
我會採取在數據庫中的用戶名字段上設置一個唯一約束的方法,然後在數據庫上嘗試插入。不要首先檢查現有的用戶名,因爲這只是一個不必要的查詢。
然後,您可以評估mysql響應以確定插入是否因重複密鑰失敗或是否出現其他問題。
我不會讓用戶名成爲主鍵,但我會建議一個唯一的約束...... –
您可以將唯一約束添加到用戶名列而不必將其作爲主鍵。 – David
取決於用戶帳戶是否可以取消激活,然後在稍後爲「新」用戶重新激活。 –