mysql 資料庫表的設計,還是簡單篇

2021-08-20 01:31:54 字數 1869 閱讀 1134

<?php

// 嗯,別問我為啥,就喜歡這個色看著舒服

// 如果你要做專案,是個新手,並且是你來設計資料表,那麼你可以看:/ 實力有限,只能寫個人的一些積累。(誰讓自己沒好好學)

// 設計資料表的時候,先確認自己需要什麼表。

// 舉個例子,我需要設計乙個**資料庫(獻醜了)

// 將需求,使用者表,商品表,大概就這麼多吧。

// 使用者表

// 商品表

// 訂單表

// 嗯,總體就是這三個,至於其它的根據個人需求來設計了。

// 那麼,我們知道我們需要哪些表了,我們需要來看他們的關係(關係表直接的多角愛戀)

// 懶得發,所以就不作圖了。可以自己動手,或者自行腦補,補不過來就動手。

// 使用者表和商品表的關係

// 其實並沒有關係,謝謝,因為它們兩個說白了就都是操作物件(至於怎麼理解?那就不要在意好了。)。

// 使用者表和訂單表的關係

// 這就有關係了,因為這是誰的訂單,這必須明確,這就是他們的關係。如何連線它們,先暫且慢說

// 商品表和訂單表的關係

// 他們也是情人,訂單表往往不止關注使用者這個情人,還要記錄,它交易給哪個使用者哪些商品,這就是關係。

// 從上面看來,整體的乙個關係是 使用者表 <-- 訂單表 <-- 商品表,或者我們倒過來:

// 商品 -- 購買後寫入 --> 訂單 -- 記錄操作的 --> 使用者

// 不知道你們有沒有看清,或者看明白上面的關係論。反正我也不是很在意

// 當訂單表需要記錄使用者與商品時,需要涉及的問題就是:

// 當前使用者操作只能是乙個使用者(當然,你們公司的設計不歸我管)

// 為了使用者體驗,你不能讓使用者乙個訂單只提交乙個商品(這裡不說商戶模式,只做官方運營,謝謝合作。)

// 那麼有兩種設計方式:

// 一種:

// 由訂單中的 good_id 以指定的格式記錄記錄所有商品 id ,這樣到時查詢的時候直接獲取對應的商品就行

// 但一般來說,在公司裡你這麼設計,基本連死也就不遠了。

// 問題:

// 如果公司要做**,這樣的話你寫入資料表的只是乙個 id ,但是如果**的變動,你卻不能儲存,所以一般不這麼設計。

// 二種:

// 增加乙個關係表,用來儲存當時購買的商品資料,並用新生成的訂單表資料作為 order_id 的值。

// 這樣設計的話一般都能滿足需求了。嗯,一般的需求。

// 那麼既然你都看到這裡了,你可以思考下,這樣設計有什麼問題或者隱患:

// --- 作答區 ---

// 再來說欄位的設計

// 一般你是需要設計乙個主鍵的。你不設定看看。

// 然後你看下有哪些是需要唯一的,將他們確認下來。比如: 名字

// 再然後你要確認它需要記錄哪些資訊,如外來鍵資訊,再如詳細介紹,**,庫存等問題。

// 最後,你確定它是否需要時間要素的記錄 推薦 用 int 記錄時間戳使用。為啥?記憶體占用少。呼叫方便。

// 表關係的設計

// 先確定是否有關係表,與之對應的關係是 一對多,還是多對多,又或者 多對一。想上面提到的商品表和訂單表的方案二設計,則是一種 一對多吧,乙個訂單表對應多個商品

// 如果是一種多對多關係,(即該錶的 id 對應另乙個表的多個 id ,然後該錶的另乙個 id 也對應另乙個表的多個 id 這就是多對多關係) ,那麼你就應該思考設計乙個關係表作為使用。

// 關係表需要注意: 誰與誰 即兩個表的對應 關聯 id(一般是主鍵 id ),然後他們是否有只需要獲取到對應資料就好的,如果字段比較少,可以考慮將對應的資料直接寫到關係表內,但字段多的話,不推薦。

總得就是這麼多了。

2018.05.16日

感覺應付作業一般。

MySQL 資料庫表設計

字段具有原子性,不可再分。所有關係型資料庫系統都滿足第一正規化 資料庫表中的字段都是單一屬性的,不可再分 要求實體的屬性完全依賴於主鍵。所謂完全依賴是指不能存在僅依賴主鍵一部分的屬性,如果存在,那麼這個屬性和主關鍵字的這一部分應該分離出來形成乙個新的實體,新實體與原實體之間是一對多的關係。為實現區分...

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

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

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

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