阿里MySQL規(guī)范推薦10條,索引強(qiáng)制規(guī)范4條,SQL強(qiáng)制規(guī)范9條。規(guī)范一:字段1. 必須使用is_xxx形式命名;規(guī)范二:字母與數(shù)字1. 不允許出現(xiàn)大寫;規(guī)范三:表名禁止使用復(fù)數(shù)表名表示實(shí)體內(nèi)容,不是實(shí)體數(shù)量;...
很多公司有很厚一本的MySQL規(guī)范,規(guī)范內(nèi)容越多,越難落地執(zhí)行。
阿里的MySQL建表強(qiáng)制規(guī)范只有10條,大伙可以參考借鑒。
畫外音,另外:
索引強(qiáng)制規(guī)范有4條,SQL強(qiáng)制規(guī)范有9條;
建議規(guī)范與參考規(guī)范若干。
規(guī)范一:是否字段
1. 表達(dá)是否概念的字段,必須使用is_xxx的形式命名;
2. 數(shù)據(jù)類型必須是 unsigned tinyint;
3. 1表示是,0表示否;
舉例:是否刪除
正確:使用is_deleted,1表示刪除,0表示未刪除
錯(cuò)誤:deleted, if_deleted, delete_or_not
規(guī)范二:字母與數(shù)字
1. 表名,字段名禁止出現(xiàn)大寫;
畫外音:MySQL在Windows下不區(qū)分大小寫,Linux下雖然區(qū)分,但為了避免節(jié)外生枝,統(tǒng)一禁止大寫。
2. 禁止數(shù)字開頭,禁止兩個(gè)下劃線中間只有數(shù)字;
舉例:
正確:aliyun_admin,level3_name
錯(cuò)誤:AliyunAdmin,level_3_name
規(guī)范三:表名禁止使用復(fù)數(shù)
表名表示實(shí)體內(nèi)容,不是實(shí)體數(shù)量,禁止使用復(fù)數(shù)。
規(guī)范四:禁止使用保留字
常見的例如:desc,range,match,delayed...
規(guī)范五:主鍵,唯一索引,普通索引命名規(guī)范
1. 主鍵索引名:pk_xxx
畫外音:primary key
2. 唯一索引名:uk_xxx
畫外音:unique key
3. 普通索引名:idx_xxx
畫外音:index
規(guī)范六:小數(shù)類型規(guī)范
1. 小數(shù)類型使用decimal;
2. 禁止使用float和double;
畫外音:float和double存在精度損失,比較的時(shí)候,可能得到意想不到的結(jié)果。
3. 如果范圍超過decimal,可以拆成整數(shù)與小數(shù)分開存儲(chǔ);
規(guī)范七:字符串長度非常相近,必須使用定長char
畫外音:預(yù)先分配存儲(chǔ)空間,不會(huì)觸發(fā)重新分配。
規(guī)范八:可變字符串規(guī)范
1. 如果字符串長度較長,且內(nèi)容長度差異較大,使用varchar;
畫外音:不預(yù)先分配存儲(chǔ)空間,比較節(jié)省空間。
2. 如果字符串長度大部分超過5000,使用text,獨(dú)立出一張表單獨(dú)存儲(chǔ);
畫外音:避免影響主表其他字段索引效率。
規(guī)范九:強(qiáng)制字段
1. 必須具備id字段:類型為bigint unsigned,單表時(shí)自增,步長為1,不具備業(yè)務(wù)含義;
2. 必須具備create_time字段:類型為datetime(除非記錄時(shí)區(qū)信息,使用timestamp);
3. 必須具備update_time字段:同上;
規(guī)范十:禁止進(jìn)行物理刪除操作
畫外音:邏輯操作保留了數(shù)據(jù)資產(chǎn)的同時(shí),能夠追溯操作行為。
近期好文:
《github標(biāo)星32W的寶藏項(xiàng)目...》
貴司有MySQL規(guī)范嗎?
你覺得他們的建表規(guī)范合理嗎?謝轉(zhuǎn)。
原文出自:https://mp.weixin.qq.com/s/Kif4yvRJGO68jXPErxwNXw
來源:本文內(nèi)容搜集或轉(zhuǎn)自各大網(wǎng)絡(luò)平臺(tái),并已注明來源、出處,如果轉(zhuǎn)載侵犯您的版權(quán)或非授權(quán)發(fā)布,請聯(lián)系小編,我們會(huì)及時(shí)審核處理。
聲明:江蘇教育黃頁對文中觀點(diǎn)保持中立,對所包含內(nèi)容的準(zhǔn)確性、可靠性或者完整性不提供任何明示或暗示的保證,不對文章觀點(diǎn)負(fù)責(zé),僅作分享之用,文章版權(quán)及插圖屬于原作者。
Copyright?2013-2024 JSedu114 All Rights Reserved. 江蘇教育信息綜合發(fā)布查詢平臺(tái)保留所有權(quán)利
蘇公網(wǎng)安備32010402000125
蘇ICP備14051488號(hào)-3技術(shù)支持:南京博盛藍(lán)睿網(wǎng)絡(luò)科技有限公司
南京思必達(dá)教育科技有限公司版權(quán)所有 百度統(tǒng)計(jì)