Mysql
 sql >> Database >  >> RDS >> Mysql

Modo corretto per archiviare i dati nel database SQL quando le colonne sono sconosciute

Recentemente mysql ha introdotto campi JSON .

Anche se non disponi dell'ultima versione di mysql, è comunque possibile salvare i dati JSON in un campo varchar ed è una soluzione piuttosto popolare supportata da molti librerie di terze parti che forniscono supporto JSON per Django.

Il motivo per cui è necessaria una libreria di terze parti è perché Django non ha un JSONField integrato. Uno è stato aggiunto di recente per Postgresql ma mysql è ancora in ritardo.

L'alternativa che non coinvolge mysql è usare redis. Django offre un eccellente supporto per redis e come sai, gli hash redis sono molto simili ai dizionari Python. Il supporto ORM richiede librerie di terze parti come con i campi json mysql. Tuttavia è più semplice pensare a redis come a un dizionario Python che può essere mantenuto tra le sessioni e interrogato molto velocemente. Ultimo ma non meno importante, l'hash è solo la punta dell'iceberge.