mysql non può generare direttamente in formato json
quindi hai due opzioni:
-
esporta in XML l'uso di uno strumento per convertire da XML a JSON (uno strumento che può gestire tabelle di grandi dimensioni ovviamente)
-
scrivi un piccolo script (ad esempio in PHP) che prelevi i dati dal DB e li scriva su file in JSON
Nota importante:
Se scegli l'opzione nr. (2) potresti avere problemi a caricare i dati dell'intera tabella, convertire in JSON e salvare su file in un unico passaggio "atomico" se hai molti record .
Tuttavia, puoi suddividere l'attività in passaggi.
Fondamentalmente una tabella trasformata in un JSON è un array di oggetti, ogni oggetto rappresenta un singolo record.
-
Apri una connessione al db
-
Inizia a scrivere il file di output e apri l'array scrivendo una parentesi quadra aperta
[
-
Esegui la tua query recuperando n ( 1
SORT la tabella da qualsiasi campo -ex. id
- e usa ilLIMIT
clausola) -
Converti ogni record con
json_econde
, scrivi la stringa su file, scrivi una virgola,
a meno che tu non abbia scritto l'ultimo record. -
Torna a 3 fino a raggiungere l'ultimo record.
-
Scrivi una parentesi quadra di chiusura nel file
]
(chiudendo l'array). -
Chiudi il file e la connessione db
Ciò richiederebbe un po' più di programmazione, ma non è scienza missilistica.
...e forse trovi qualcosa online che lo fa già.
Aggiornamento:
Uno script che recupera i dati dal DB e li scrive su file in JSON può essere trovato qui su GitHub:Dump-table-to-JSON (ultimo aggiornamento 2016).