資料庫(Database)中的預設欄位(也稱為默認欄位),就是在一般情況下,每個資料表(Table)必須包含的欄位(Field),這類欄位用于滿足特定的資料需求,欄位值的填充或更改一般遵照一定的邏輯要求,預設欄位的設計應該考慮到資料的完整性和一致性,以確保資料的正確與可靠,設計合理的表欄位對于資料的有效管理和高效查詢至關重要,
**boot-admin** 是一款采用前后端分離模式、基于 SpringCloud 微服務架構的SaaS后臺管理框架,系統內置基礎管理、權限管理、運行管理、定義管理、代碼生成器、辦公管理和流程管理7個功能模塊,集成分布式事務 Seata、作業流引擎 Flowable、業務規則引擎 Drools、后臺作業調度框架 Quartz 等,技術堆疊包括 Mybatis-plus、Redis、Nacos、Seata、Flowable、Drools、Quartz、SpringCloud、Springboot Admin Gateway、Liquibase、jwt、Openfeign、I18n等,
> [專案原始碼倉庫github](https://github.com/soft1314/boot-admin)
> [專案原始碼倉庫gitee](https://gitee.com/soft1314/boot-admin-vue)
## 欄位命名規范
在設計資料庫表欄位時,應該遵循簡潔明了、易于閱讀、有意義的原則,并且應該盡可能遵循以下命名規范,這有助于提高代碼的可讀性和可維護性,
1. 欄位名采用【小寫字母】和【下劃線】的組成,命名簡潔明確;
2. 禁止使用資料庫關鍵字,如:name,time ,datetime,password等;
3. 名稱不易太長,一般不超過三個英文單詞;
4. 名稱一般使用名詞或者動賓短語;
5. 用單數形式表示名稱;
6. 欄位名不允許“IS_XXX”,“SET_XXX”,“GET_XXX”等形式;
## boot-admin 專案中實際使用的預設欄位
### 基本預設欄位
| 序號| 欄位| 名稱| 資料型別| 主鍵| 非空| 默認值|列舉| 備注說明|
|----|----|----|----|----|----|----|----|----|
|1| GUID| 主鍵| NVARCHAR2(38)| √| √| ||插入時應用程式填充
|2| CREATE_BY| 記錄創建者| NVARCHAR2(100)| |√ |||插入時應用程式填充
|3| CREATE_TIME| 記錄創建時間| DATE| |√ |||插入時應用程式填充
|4| MODIFY_BY| 記錄最后修改者| NVARCHAR2(100)| |√|||應用程式觸發更新
|5| MODIFY_TIME| 記錄最后修改時間| DATE| |√|||應用程式觸發更新
|6| DATESTAMP| 時間戳| DATE| | √| sysdate||資料庫觸發更新
|7| ENABLED| 啟用狀態| NVARCHAR2(1)| | √ || ENABLED|應用程式觸發更新
|8| DELETED| 洗掉狀態| NVARCHAR2(1)| | √ || DELETED|邏輯洗掉應用程式觸發更新
|9| VERSION| 樂觀鎖| INT| | √
|10| REMARKS| 備注| NVARCHAR2(900)|
|11| TENANT_ID_| 租戶ID| NVARCHAR2(38)| | √|||多租戶資料隔離
### 層次資料額外預設欄位
| 序號| 欄位| 名稱| 資料型別| 主鍵| 非空| 默認值|列舉| 備注說明|
|----|----|----|----|----|----|----|----|----|
|12| LEAF| 是否末級| NVARCHAR2(1)| | √ || YESNO
|13| PARENT_GUID| 父級GUID| NVARCHAR2(38)| | √
|14| SORT| 順序號| INT| | √
## 總結
預設欄位設計是一個比較重要的問題,需結合專案實際仔細考慮和設計,通過合理地設計預設欄位,我們可以避免不必要的復雜性問題,提高資料庫的性能和可靠性,以滿足更多業務需求,
本文來自博客園,作者:超然樓,轉載請注明原文鏈接:https://www.cnblogs.com/soft1314/p/17416463.html
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/552967.html
標籤:其他
上一篇:es 筆記二之基礎查詢
下一篇:返回列表
