簡體   English   中英

在Mysql數據庫的單個字段中存儲數組的替代方法

[英]Alternative to storing array in a single field of Mysql database

如何避免將用戶數組存儲在一個字段中? 我有一個會話表,該表具有包含加入會話的用戶ID的字段(joinusers_id)。 我應該如何插入它們? 最簡單的方法是用逗號將它們分開,但是我想這不是最有效的方法。 附件是我當前執行的會話表的屏幕截圖: 表格中目前有什么

好的,我們正在談論數據庫和規范化。

http://en.wikipedia.org/wiki/Database_normalization

不,請不要使用非原子場,這很不好,如果您想加入這樣的非原子場,將會遇到麻煩。

我建議您這樣做:

您有用戶,因此請創建一個用戶表,其中包含屬於該用戶的所有事物。 用戶表需要一個主鍵: user_mailaddress

您有會話,創建會話表...主鍵: session_id

現在創建一個表user_session ,該表具有兩個屬性(列) user_mailaddresssession_id,使用此表可以將兩個表連接在一起。

SELECT *
FROM user
NATURAL_JOIN user_session
NATURAL_JOIN session

自然聯接將聯接表,其中屬性和屬性的內容是可比較的。

注意:表用戶會話稱為實體。 user_session稱為關系。 因此,這稱為實體關系模型。 => http://en.wikipedia.org/wiki/Entity%E2%80%93relationship_model

要更深入地閱讀它: https : //www.stat.auckland.ac.nz/~paul/ItDT/HTML/node42.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM