mysql數(shù)據(jù)庫做關(guān)聯(lián)一般用id還是用戶名
問題描述
本人做前端的,正在一邊摸索一邊做個個人php項目,需要通過a連接傳一個用戶標識,來顯示相應(yīng)用戶的數(shù)據(jù).本人使用的是mysql.
<a href='http://www.leifengta.com.cn/wenda/index.php?ui=<?php echo $_SESSION[ ’username’ ] ?>'>
所以想問一下做這個標識(關(guān)聯(lián))一般用id還是用戶名,用用戶名關(guān)聯(lián)的話,可以從session獲取。那用id關(guān)聯(lián)是不是還得把id傳到前面來
問題解答
回答1:如果username具備唯一性的話,個人建議還是用username。id通常是自增的,那么就可以根據(jù)id大致估算出網(wǎng)站的真實用戶數(shù)。比如:很多網(wǎng)站都喜歡拿注冊用戶數(shù)來“炫耀”,號稱自己有多少多少注冊用戶(百分之九十以上都是吹牛B的),那么,肯定是不能把id暴露出來的。當然,如果你定義的id是無規(guī)律的,或者不需要對外影藏這些信息的話,id再合適不過了。
回答2:Id.萬一用戶名變成一樣的呢?所以必須id ,id 設(shè)為主鍵
回答3:1.一般是用id2.該id大多數(shù)不是主鍵標識,而是使用用戶的唯一編碼3.看你應(yīng)該不太會後臺語言,既然你使用session作為參數(shù),可以直接有後臺處理,而非用前端處理。所以id不需要傳過來
回答4:沒有硬性要求,但是如果要考慮性能,選短的簡單的就對了.
如: 優(yōu)化性能,減少匹配工序如數(shù)值匹配跟字符串匹配
回答5:這個要看你數(shù)據(jù)庫設(shè)計的,不過一般用id做好了,用戶名不保險
回答6:我們用sn,用戶唯一序列號
回答7:了解下數(shù)據(jù)庫的主鍵與外鍵
相關(guān)文章:
1. boot2docker無法啟動2. 關(guān)docker hub上有些鏡像的tag被標記““This image has vulnerabilities””3. docker-compose中volumes的問題4. docker安裝后出現(xiàn)Cannot connect to the Docker daemon.5. nignx - docker內(nèi)nginx 80端口被占用6. java - SSH框架中寫分頁時service層中不能注入分頁類7. javascript - mock.js可以存儲數(shù)據(jù)嗎8. docker api 開發(fā)的端口怎么獲取?9. docker images顯示的鏡像過多,狗眼被亮瞎了,怎么辦?10. golang - 用IDE看docker源碼時的小問題

網(wǎng)公網(wǎng)安備