97色精品视频在线观看免费,日韩欧美亚洲每日更新网,国产精品色婷婷99久久精品,99e热久久免费精品首页

阿里巴巴的 MySQL 建表規范,居然只有10條?

2024-07-15 10:56:52 Jinyu


很多公司有很厚一本的MySQL規范,規范內容越多,越難落地執行。

阿里的MySQL建表強制規范只有10條,大伙可以參考借鑒。

畫外音,另外:

索引強制規范有4條,SQL強制規范有9條;

建議規范與參考規范若干。

規范一:是否字段

1、表達是否概念的字段,必須使用is_xxx的形式命名;

2、數據類型必須是 unsigned tinyint;

3、1表示是,0表示否;

舉例:是否刪除
正確:使用is_deleted,1表示刪除,0表示未刪除
錯誤:deleted, if_deleted, delete_or_not

規范二:字母與數字

1、表名,字段名禁止出現大寫;

畫外音:MySQL在Windows下不區分大小寫,Linux下雖然區分,但為了避免節外生枝,統一禁止大寫。

2、禁止數字開頭,禁止兩個下劃線中間只有數字;

舉例:
正確:aliyun_admin,level3_name
錯誤:AliyunAdmin,level_3_name

規范三:表名禁止使用復數

表名表示實體內容,不是實體數量,禁止使用復數。

規范四:禁止使用保留字

常見的例如:desc,range,match,delayed…

規范五:主鍵,唯一索引,普通索引命名規范

1、主鍵索引名:pk_xxx

畫外音:primary key

2、唯一索引名:uk_xxx

畫外音:unique key

3、普通索引名:idx_xxx

畫外音:index

規范六:小數類型規范

1、小數類型使用decimal;

2、禁止使用float和double;

畫外音:float和double存在精度損失,比較的時候,可能得到意想不到的結果。

3、如果范圍超過decimal,可以拆成整數與小數分開存儲;

規范七:字符串長度非常相近,必須使用定長char

畫外音:預先分配存儲空間,不會觸發重新分配。

規范八:可變字符串規范

1、如果字符串長度較長,且內容長度差異較大,使用varchar;

畫外音:不預先分配存儲空間,比較節省空間。

2、如果字符串長度大部分超過5000,使用text,獨立出一張表單獨存儲;

畫外音:避免影響主表其他字段索引效率。

規范九:強制字段

1、必須具備id字段:類型為bigint unsigned,單表時自增,步長為1,不具備業務含義;
2、必須具備create_time字段:類型為datetime(除非記錄時區信息,使用timestamp);
3、必須具備update_time字段:同上;

規范十:禁止進行物理刪除操作

畫外音:邏輯操作保留了數據資產的同時,能夠追溯操作行為。

我要咨詢
主站蜘蛛池模板: 永春县| 汉中市| 敦煌市| 淳安县| 昌都县| 隆尧县| 铁岭市| 通许县| 宁波市| 大丰市| 宝应县| 凉城县| 嘉义县| 罗甸县| 桂阳县| 宁乡县| 南乐县| 固阳县| 囊谦县| 潮州市| 庄河市| 镇原县| 平乐县| 常山县| 永昌县| 永定县| 铁岭市| 淳化县| 龙南县| 山西省| 六盘水市| 宣恩县| 吉木萨尔县| 普陀区| 英吉沙县| 揭西县| 平泉县| 云林县| 大余县| 开远市| 顺义区|