mysql - 表名稱前綴到底有啥用?
問題描述
那么多公司的項(xiàng)目都在設(shè)計(jì)表的時(shí)候給表名稱加個(gè)前綴單詞,但是這到底有啥用呢,整個(gè)項(xiàng)目看下來沒發(fā)覺這有用到的
問題解答
回答1:給表名加前綴,之前是一種比較流行的方式。現(xiàn)在的趨勢是放棄添加前綴,因?yàn)樗鼛淼暮锰帲h(yuǎn)小于帶來的問題。很多時(shí)候跨庫的設(shè)計(jì),比表前綴的設(shè)計(jì)來的更靈活和實(shí)用,而且前綴設(shè)計(jì)(尤其是在混合用的情況下)帶來的一些困惑和問題卻是很多新手最大的苦惱。所以請慎重。
回答2:便于管理
回答3:多個(gè)項(xiàng)目放在同一個(gè)數(shù)據(jù)庫就會(huì)有用了
項(xiàng)目1用戶表 - p1_user項(xiàng)目2用戶表 - p2_user
這么一說你就明白了
回答4:設(shè)計(jì)習(xí)慣而已。通常是在同一個(gè)庫中區(qū)分不同的系統(tǒng)表而建立的。如圖示例,沒前綴的是后臺(tái)管理系統(tǒng)的表。帶wms前綴的是wms系統(tǒng)的表
講道理,還是按照數(shù)據(jù)庫來劃分不同類型的表比較合適,前綴這玩意兒確實(shí)累贅
回答6:前綴很有用的,比如我想知道所有關(guān)于user的表,直接show tables like ’%user%’就可以了,用mysql命令行的就知道了
尤其是很多插件或者模塊的項(xiàng)目,加了這些前綴還有利于數(shù)據(jù)庫表的批處理等操作
回答7:用來區(qū)分所有項(xiàng)目使用同一個(gè)數(shù)據(jù)庫中不同項(xiàng)目的數(shù)據(jù)表
回答8:表名稱的前綴只是一個(gè)命名規(guī)范,對于功能實(shí)現(xiàn)沒有影響。
在比較復(fù)雜的系統(tǒng)中,通過表名前綴可以大概了解到表所在的模塊和分類,這樣做日常開發(fā)和運(yùn)維的時(shí)候看起來比較方便,新人了解系統(tǒng)數(shù)據(jù)結(jié)構(gòu)的時(shí)候也有章可循。
個(gè)人比較贊同這種做法,成本很低,但對后期的運(yùn)維方便,為什么不做呢?
回答9:數(shù)據(jù)表在一個(gè)數(shù)據(jù)庫時(shí),而且數(shù)據(jù)表比較多的時(shí)候區(qū)分是很直接的
回答10:一個(gè)項(xiàng)目有100多張表以上時(shí),你會(huì)懂為什么需要用到.
理想的是user_tabel1可以寫成user.table1(建立多庫) 問題是在很多開發(fā)人員對數(shù)據(jù)庫的認(rèn)識(shí)也只是簡單的增刪改查,包括很多框架也是(只能連接一個(gè)庫)
打個(gè)比方,oracle最經(jīng)典的scott實(shí)例.scott擁有部門與部門人員的名單, hr(另一個(gè)實(shí)例)擁有部門列表名單. 還有一個(gè)產(chǎn)品實(shí)例擁有產(chǎn)品列表名單. hr實(shí)例擁有對scott.emp的select權(quán)限但是沒有update權(quán)限個(gè)人覺得這樣的設(shè)計(jì)對數(shù)據(jù)的安全性(當(dāng)一個(gè)實(shí)例被攻擊破解時(shí)不會(huì)暴露全部數(shù)據(jù)),邏輯分明性有很大的提高,但同時(shí)也要求開發(fā)人員對數(shù)據(jù)庫有更多的理解和掌握. 但往往我們看到的是,開發(fā)人員所有的表放在一個(gè)庫里.權(quán)限的控制也只是從業(yè)務(wù)邏輯上來控制.
(以上都是個(gè)人的理解)
相關(guān)文章:
1. MySQL中無法修改字段名的疑問2. docker images顯示的鏡像過多,狗眼被亮瞎了,怎么辦?3. Matlab和Python編程相似嗎,有兩種都學(xué)過的人可以說說嗎4. 網(wǎng)頁爬蟲 - 用Python3的requests庫模擬登陸B(tài)ilibili總是提示驗(yàn)證碼錯(cuò)誤怎么辦?5. javascript - 微信小程序封裝定位問題(封裝異步并可能多次請求)6. android - QQ物聯(lián),視頻通話7. 請教各位大佬,瀏覽器點(diǎn) 提交實(shí)例為什么沒有反應(yīng)8. python的前景到底有大?如果不考慮數(shù)據(jù)挖掘,機(jī)器學(xué)習(xí)這塊?9. javascript - Web微信聊天輸入框解決方案10. mysql - 怎么讓 SELECT 1+null 等于 1
