mysql 分析表結構 MySQL表結構設計解析

2021-10-19 00:19:09 字數 1183 閱讀 3165

mysql是一種關係型資料庫管理系統,關聯式資料庫將資料儲存在不同的表中,而不是將所有資料放在乙個大倉庫內,這樣就增加了速度並提高了靈活性。歸根結底,我們主要還是和mysql表打交道的,mysql表結構設計也就顯得尤為重要了。

1.選擇合適的儲存引擎

3.選擇合適的資料型別

這裡指的是資料列的資料型別,在選擇合適的資料型別時,我們應滿足以下條件:

盡量選擇小,簡單的資料型別。

保持可讀性。

盡量避免null

我們盡可能選擇小的資料型別,這樣會有很多好處,比如服務端處理效率,傳輸等都會快些。這裡給出幾個常見的資料型別設計:

狀態型別用 tinyint,例如 性別等。

時間日期使用datetime,timesamp型別,我比較喜歡使用datetime型別,(可讀性高些)。

盡量不要使用text和blob資料型別,特別是blob。

4.新增合適的索引

建議在建立時間上都加上索引,索引提供指向儲存在表的指定列中的資料值的指標,然後根據您指定的排序順序對這些指標排序。資料庫使用索引以找到特定值,然後順指標找到包含該值的行。這樣可以使對應於表的sql語句執行得更快,可快速訪問資料庫表中的特定資訊。

5.新增注釋

新增注釋,這是非常重要的,其中包括表注釋,字段注釋。主要是為了後期表結構的維護,我相信你對著資料表中那麼多欄位,如果沒有注釋的話,你是很難一下子明白是什麼意思的,即使你是該錶結構的設計者,十天半個月過去後,你還記得嗎?

6.設計邏輯刪除

這個字段主要用作業務上的邏輯刪除,在現在資料為金的時代,資料不建議做物理刪除。原因有以下幾點:

可恢復,物理刪除一旦刪除,即不可恢復。

邏輯刪除資料可用資料分析等。

例如:deleted tinyint not null default 1;

7.使用外來鍵約束

外來鍵約束用來保證資料完整性的,這一點我很贊同,但是我不建議在資料庫表中加外來鍵約束,因為在資料表中新增外來鍵約束,會影響效能,例如: 每一次修改資料時,都要在另外的一張表中執行查詢。我的建議是:在應用層,也就是**層面,來維持外來鍵關係。

以上就是我們對mysql表結構設計的解析,我們在使用mysql資料庫建立表時,一定要做好表結構的設計工作,設計出結構嚴謹邏輯順暢的表,也能夠使mysql對錶中資料的處理更加迅速,準確。在本站的mysql教程中,有對mysql表的各種介紹,在看完之後,相信我們對mysql表結構設計會有更深的理解。

MySQL筆記建立表結構 MySQL表結構筆記9

本篇大綱 mysql資料表 建立表建立主鍵 auto increate 指定預設值 更新表結構 刪除表,重新命名表 01 表 mysql 資料庫的表是乙個二維表,由乙個或多個資料列構成 每個資料列都有它的特定型別,該型別決定了mysql如何看待該列資料 02 建立表 命令 格式 使用create t...

mysql 恢復mysql表結構

mysql,frm格式恢復mysql表結構,以tuser.frm格式為例 新增資料庫,如下,建立資料庫名為ab 開啟資料庫,雙擊開啟資料庫 點右鍵新建表結構 新增表,裡面只新增乙個字段,主鍵,如下圖 儲存包結構,表明必須為tuser.frm中的tuser表名 開啟mysql安裝目錄,找打ab資料庫 ...

mysql 表結構說明文件 mysql表結構說明

mysql mysql.db表結構 it 計算機 專業資料。mysql mysql.db表結構 mysql desc mysql.db g 1.row field host type char 60 null n.學生成績管理系統資料庫表結構說明 計算機軟體及應用 it 計算機 專業資料。1 set...