Hämta data från databaser

Databehandling i kommandoraden

Susan Sun

Data Person

sql2csv: dokumentation

sql2csv:

  • kör en SQL-fråga mot en mängd olika SQL-databaser (t.ex. MS SQL, MySQL, Oracle, PostgreSQL, SQLite)
  • sparar resultatet till en CSV-fil

Dokumentation:

sql2csv -h
usage: sql2csv [-h] [-v] [-l] [-V] [--db CONNECTION_STRING] [--query QUERY]
               [-e ENCODING] [-H]
               [FILE]
Databehandling i kommandoraden

sql2csv: fråga mot databasen

Exempelsyntax:

sql2csv --db "sqlite:///SpotifyDatabase.db" \
        --query "SELECT * FROM Spotify_Popularity" \
        > Spotify_Popularity.csv

1. Upprätta databasanslutning:

  • --db följs av databasanslutningssträngen
  • SQLite: börjar med sqlite:/// och slutar med .db
  • Postgres & MySQL: börjar med postgres:/// eller mysql:/// och utan .db
Databehandling i kommandoraden

sql2csv: fråga mot databasen

Exempelsyntax:

sql2csv --db "sqlite:///SpotifyDatabase.db" \
        --query "SELECT * FROM Spotify_Popularity" \
        > Spotify_Popularity.csv

2. Fråga mot databasen:

  • --query följs av SQL-frågesträngen
  • Använd SQL-syntax som är kompatibel med databasen
  • Skriv frågan på en rad utan radbrytningar
Databehandling i kommandoraden

sql2csv: fråga mot databasen

Exempelsyntax:

sql2csv --db "sqlite:///SpotifyDatabase.db" \
        --query "SELECT * FROM Spotify_Popularity" \
        > Spotify_Popularity.csv

3. Spara utdata:

  • >: omdirigerar utdata till en ny lokal CSV-fil
  • Annars skrivs bara frågeresultatet ut i konsolen
Databehandling i kommandoraden

Nu kör vi en övning!

Databehandling i kommandoraden

Preparing Video For Download...