sql >> Databasteknik >  >> RDS >> Mysql

MySQL:Inbäddad JSON vs tabell

EN av anledningarna till att normalisera en databas är att minska redundansen (dina "repeterbara block")

EN ANNAN anledning är att tillåta "bakåt" sökning. Om du ville veta vilken video som spelades in på "15 Pike Place" kommer din JSON-lösning att misslyckas (du måste tillgripa sekventiell läsning, avkoda JSON vilket motverkar syftet med en RDBMS)

Bra tumregler:

  • Strukturerade data – lägg i tabeller och kolumner
  • Data som kan vara en del av frågevillkor - lägg i tabeller och kolumner
  • Ostrukturerad data som du vet att du aldrig kommer att fråga efter - placerad i BLOB-, XML- eller JSON-fält

Om du är osäker, använd tabeller och kolumner . Du kanske måste spendera lite extra tid i början, men du kommer aldrig att ångra dig. Folk har ångrat sitt val för JSON-fält (eller XML, för den delen) om och om igen och igen. Nämnde jag "igen"?




  1. Hantera fel med hög allvarlighet i SQL Server

  2. Vilken ORM ska jag använda för Node.js och MySQL?

  3. Hur validerar man kreditkortsnummer och identifierar dess typ med PL/SQL?

  4. Hur man hittar medelvärdet för en numerisk kolumn i SQL