Welcome! 登入 註冊
美寶首頁 美寶百科 美寶論壇 美寶落格 美寶地圖

Advanced

避免註冊會員「使用者名稱重複」(case-insensitive):Functional indexes & lower() search

Posted by mepoadm 
第一步:對有關「會員」的 database table 中的 username 建立 UNIQUE KEY。SQL 如下:

CREATE UNIQUE INDEX users_unique_username ON the_user_table USING btree (lower(username));

其中的 (lower(username)) 的用法稱作 Functional Indexes。USING btree 是指定建立 KEY 的方法,此處為以 btree 建立。不一定要寫上。

第二步:在 Script 中確保使用者名稱不重複:Case-insensitive 搜尋

SELECT * FROM the_user_table WHERE lower(username) = '新註冊的使用者名稱';

若 SELECT 結果有找到相同的使用者名稱,就表示該帳號已經不能申請。


Reference:
Functional Indexes



Edited 1 time(s). Last edit at 09/26/2010 03:26AM by mepoadm.
(編輯記錄)