Hvorfor konvertere JSON til SQLITE3?
JSON er et dataudvekslingsformat, der er velegnet til API'er, men dårligt til forespørgsler. Når dine data er i .sqlite3, kan du køre SQL-forespørgsler, joine tabeller og filtrere rækker uden at køre en databaseserver. SQLite gemmer alt i en enkelt bærbar .db-fil, der er nem at flytte, sikkerhedskopiere og dele.
Sådan konverterer du JSON til SQLITE3
sqlite-utils OPEN-SOURCE
Installer via pip install sqlite-utils, og kør derefter sqlite-utils insert mydata.db tablename file.json for at oprette en SQLite-database og indlæse JSON-arrayet som rækker.
DB Browser for SQLite FREE
Opret en ny databasefil, og brug derefter File > Import > Table from JSON file til at vælge din .json og knytte den til en tabel.
Python FREE
Brug de indbyggede json- og sqlite3-moduler til at indlæse JSON-arrayet og indsætte hvert objekt som en række, hvilket giver fuld kontrol over kolonnetyper og datastruktur.
Om disse formater
En JSON-fil er en almindelig tekstdatafil i JavaScript Object Notation-format, der bruges af web-API'er, app-konfigurationer og dataeksporter. Enhver teksteditor kan åbne den - Notesblok i…
Åbn .JSON detaljer →En .sqlite3-fil er en komplet relationel database gemt i én binær fil af SQLite - det samme format som .sqlite og .db. Den indeholder strukturerede datatabeller, ikke et læsbart dokument.…
Åbn .SQLITE3 detaljer →Kvalitet & hvad man skal være opmærksom på
- JSON skal være et array af objekter på øverste niveau for en ren import; et enkelt objekt, en dybt indlejret struktur eller en JSON Lines-fil kræver hver især forskellig håndtering.
- Alle værdier gemmes som TEXT som standard i sqlite-utils, medmindre du sender
--detect-types; angiv typer eksplicit, hvis du har brug for heltalsmatematik. - SQLite gemmer alt i en enkelt
.db- eller.sqlite3-fil - ingen server er nødvendig - hvilket gør det nemt at flytte og dele den resulterende database.
Ofte stillede spørgsmål
Fungerer dette med indlejret JSON?
--flatten-flag for at fladgøre ét niveau af indlejring til ekstra kolonner; dybt indlejrede strukturer kræver et brugerdefineret Python-script.