MySQL 資料庫表設計

2021-09-18 06:43:05 字數 867 閱讀 1154

字段具有原子性,不可再分。 所有關係型資料庫系統都滿足第一正規化)資料庫表中的字段都是單一屬性的, 不可再分;

要求實體的屬性完全依賴於主鍵。 所謂完全依賴是指不能存在僅依賴主鍵一部分的屬性,如果存在, 那麼這個屬性和主關鍵字的這一部分應該分離出來形成乙個新的實體, 新實體與原實體之間是一對多的關係。為實現區分通常需要為表加上乙個列,以儲存各個例項的惟一標識。簡而言之, 第二正規化就是屬性完全依賴主鍵。

滿足第三正規化( 3nf) 必須先滿足第二正規化( 2nf)。 簡而言之, 第三正規化( 3nf)要求乙個資料庫表中不包含已在其它表中已包含的非主鍵資訊。

1 、每一列只有乙個單一的 值,不可再拆分

2 、每一行都有主鍵能進行區分

3、每乙個表都不包含其他表已經包含的非主鍵

資料從磁碟到緩衝區,緩衝區髒頁到磁碟進行持久的過程中,列的數量過多會導致效能下降,過多的列影響轉換和持久的效能

過分的滿足第三正規化化造成了太多的表關聯

表的關聯操作將帶來額外的記憶體和效能開銷

使用innodb引擎的外來鍵關係進行資料的完整性保證

外來鍵表中資料的修改會導致innodb引擎對外鍵約束進行檢查,就帶來了額外的開銷

select

*from

***xx

where

(convert((price_full * 100 - price * 100) , signed) - convert(coupon_price*100,signed)

andis_del = 0)

order by

iddesc

limit 100

將這個結果設計一列專門儲存,假設欄位a  a與is_del做聯合索引。

mysql 資料庫設計 MySQL 資料庫設計總結

本文由雲 社群發表 規則 1 一般情況可以選擇 myisam 儲存引擎,如果需要事務支援必須使用 innodb 儲存引擎。注意 myisam 儲存引擎 b tree 索引有乙個很大的限制 參與乙個索引的所有欄位的長度之和不能超過 1000 位元組。另外 myisam 資料和索引是分開,而 innod...

我MySQL資料庫表的設計說明 資料庫設計說明書

資料庫設計 在系統設計過程中,資料庫也是乙個不可以忽視的環節,資料庫的設計關係到系統的穩定性,所以每個資訊的管理,必須設計好,下面是我們用mysql設計的相關系統的資料庫。1 使用者表 2 商品資訊表 3 訂單表 4 評價或資訊反饋表 這些表都不是隨意設計的,在關係上必須有對應的關係。下面是詳細建庫...

mysql資料庫表設計小數型別

float 浮點型,含位元組數為4,32bit,數值範圍為 3.4e38 3.4e38 7個有效位 double 雙精度實型,含位元組數為8,64bit數值範圍 1.7e308 1.7e308 15個有效位 decimal 數字型,128bit,不存在精度損失,常用於銀行帳目計算。28個有效位 nu...