我一直在努力保存/加載,並且我發現我必須加載/保存很多表,因爲我將表分成不同的類別。字符,character_appearance,character_preferences,character_session等(我使用LEFT JOIN子句加載)MySQL - 多表與單表
如果我只是把所有的列放到一個表中,而不是將它拆分成多個表,會更好嗎?
我通常會將它們分成多個線程,因爲我認爲我會在表內有太多的列,這可能會導致問題。
是否應該使用單個表格/多個表格的任何意見?
我一直在努力保存/加載,並且我發現我必須加載/保存很多表,因爲我將表分成不同的類別。字符,character_appearance,character_preferences,character_session等(我使用LEFT JOIN子句加載)MySQL - 多表與單表
如果我只是把所有的列放到一個表中,而不是將它拆分成多個表,會更好嗎?
我通常會將它們分成多個線程,因爲我認爲我會在表內有太多的列,這可能會導致問題。
是否應該使用單個表格/多個表格的任何意見?
這一切都取決於你的設計。角色是否有多個外觀?如果是這樣,則character_appearance將屬於它自己的表格。如果一個角色只有一個外觀,那麼它將屬於角色表。只要每列實際上直接取決於主鍵,表中列的數量就不是問題。
我會想象一個角色可以有多個首選項,在這種情況下,您將需要創建一個特殊首選項表。關於會話呢?每個字符或多個字符?問題是會話實際上依賴於什麼?角色ID或別的東西?
也許一個角色在不同的時間可以有幾個會話。如果是這種情況,那麼會話不依賴於角色的主鍵,而是依賴於時間以及角色的主鍵。在這種情況下,它不屬於字符表格,而是屬於表格。
多個表格:從建模和維護的角度來看,通常每個域類都有一個表格更清晰。
會話表包含當前/最後一個會話密鑰,最後一個ip,最後一次登錄日期和其他事情(例如在線花費的小時數),當前連接時間(自從登錄后角色已聯機多長時間)等差異值,等 外觀表也有多個列,如頭部,軀幹,腿,腳,手,手臂,頭髮,鬍子,顏色等。 – TheAJ 2010-01-12 02:30:11
多列不是問題。頭,軀幹,腿,腳,手,手臂,頭髮,鬍子,顏色都直接取決於角色嗎?如果是這樣,他們屬於角色表,如果不是,他們屬於他們所依賴的東西。與會話相同的東西等 – 2010-01-12 02:34:12