sql >> Databasteknik >  >> RDS >> Mysql

Mysql:Är det praktiskt att skapa en separat tabell för varje användares inlägg

Du bör lägga till användar-ID i butiker/inlägg. Det finns många anledningar till varför du inte vill ha separata tabeller för varje användare:

  • MySQL är designat för att hantera tabeller med många rader, inte många tabeller med samma struktur.
  • Att strukturera frågor som går över tabeller kräver att många olika tabeller kombineras.
  • En liten förändring av datastrukturen, som att lägga till en ny kolumn, blir en mardröm.
  • Referenser med främmande nyckel till butikerna blir omöjliga.
  • Om data för en användare inte fyller en enda datasida, slösar du bort mycket minne.

Det finns några anledningar till att det kan vara nödvändigt att dela upp data i separata tabeller. Här är några möjliga orsaker:

  • Åtkomst är lättare att hantera på tabellnivå än på radnivå.
  • Replikering av data för varje användare kan ha olika krav.
  • En extern enhet kräver att data finns i separata tabeller eller databaser.

Den första uppsättningen skäl verkar dock väga mycket tyngre för strukturer med enstaka tabeller/enheter. Dessa mer avancerade problem verkar inte vara ett problem.




  1. Bygg en offline-först applikation med Node.js och SQLite

  2. Tillämpa OFFSET och LIMIT i ORACLE för komplexa anslutningsfrågor?

  3. postgresql missbildad array literal i skapa aggregerad initcond

  4. Hur får jag MySQL autoincrement-primärnyckeln från Sequelize på save()?