sql >> Database >  >> RDS >> Mysql

Database binnen een database (tabelontwerp)

Misschien wilt u een Entity Attribute Value-model bekijken (EAV) ontwerp dan voor uw gegevens.

In principe kun je een tabel hebben met tabelnamen en wat andere metagegevens over tabellen.

Vervolgens kunt u voor elk van die rijen een tabel maken met kolomgegevens, zoals gegevenstype en naam.

Dan heb je een tabel waarin je de waarden voor elke kolom in een lange tabel zet.

Hiermee kunt u dynamisch tabellen maken of dynamisch rijen toevoegen/verwijderen.

Voor een vergelijking op relationeel en EAV kun je deze vraag bekijken:

Entity Attribute Value Database vs . strikt relationeel model e-commerce

Als u echter een relationele weergave van deze gegevens wilt hebben, moet u triggers maken om de weergaven up-to-date te houden, en dit kan veel werk zijn om dat goed te laten werken. Als je geen relationele weergave nodig hebt, zou het goed moeten komen.

Een andere manier om dit te doen is met een NoSQL-database (http://en.wikipedia.org/wiki/ Geen SQL ), omdat het schema niet hoeft te worden ingesteld en u dus gewoon de kolommen kunt opslaan die u voor die rij nodig heeft.

Op dit punt zou ik de NoSQL-weg kiezen, omdat er veel databases zijn die kunnen werken, en het opnieuw uitvinden dat je hoeft te doen is minimaal.



  1. Kan pool niet vullen (geen bufferruimte beschikbaar)

  2. Een ContentDocument aan een aangepast Salesforce-object toevoegen

  3. Noodzaak om kennisgeving te verzenden in een batch van 1000

  4. kolom niet toegestaan ​​hier fout in INSERT-instructie