Inhoudsopgave
PSQL is de opdrachtregel, de console die standaard wordt geleverd met PostgreSQL, dit stelt ons in staat om query's uit te voeren en stelt ons zelfs in staat om het te gebruiken als een hulpmiddel om geautomatiseerde scripts uit te voeren, gegevens te importeren en exporteren, herstel, databasebeheer en zelfs als een basisrapportgenerator.De interactieve console gebruiken PSQL We moeten eerst weten welke commando's we in deze modus kunnen gebruiken, hiervoor hebben we toegang tot de algemene hulp die we hebben met behulp van de volgende instructie:
psql \?
Hiermee zullen we een lijst weergeven van wat we kunnen gebruiken, en als we vragen hebben met een SQL-statement, kunnen we deze hulp gebruiken om specifieke informatie over dat commando te verkrijgen, bijvoorbeeld:
\ h MAAK TABEL
Dit zou ons een resultaat geven zoals we in de volgende afbeelding zullen zien.
Hoe kunnen we observeren dat de help ons alle geldige opties laat zien die we kunnen gebruiken bij het uitvoeren van een opdracht of SQL-instructie binnen onze interactieve opdrachtregel PSQL.
De niet-interactieve console betekent dat we de opdrachtregel vragen om een scriptbestand uit te voeren dat een mix van SQL-instructies met opdrachten bevat PSQLWe kunnen zelfs als alternatief SQL-instructies in de aanroep doorgeven aan uitvoering binnen de niet-interactieve console. Dit stelt ons in staat om het maken van geautomatiseerde taken te vergemakkelijken, omdat we de instructies die we willen uitvoeren in een bestand kunnen opslaan en vervolgens kunnen plannen dat ze worden uitgevoerd wanneer we ze nodig hebben.
Om een bestand uit te voeren, gebruiken we eenvoudig de parameter -f als volgt:
psql -f een_script_bestand
Als we de commando's niet in een bestand hebben, kunnen we ze op de volgende manier rechtstreeks aan de console doorgeven:
psql -d postgresql_book -c "DROP TABLE ALS ER slak bestaat; CREATE SCHEMA staging;"
Zoals we hebben gezien, kunnen we meerdere uitspraken opnemen, zolang we ze maar scheiden met een puntkomma.
Laten we eens kijken hoe we een bestand kunnen bouwen met interactieve opdrachten erin:
\ a \ t \ g create_script.sql SELECTEER 'TABEL MAKEN staging.factfinder_import (geo_id varchar (255), geo_id2 varchar (255), geo_display varchar (255),' || array_to_string (array_agg ('s' || lpad (i :: tekst, 2, '0') || 'varchar (255), s' || lpad (i :: tekst, 2, '0') || '_perc varchar (255)'), ',') || ');' VAN generator_serie (1,51) Als i; \ o \ ik maak_script.sql
We gebruiken \ t om de kopteksten te verwijderen en \ a om de gegenereerde break-elementen te elimineren, dan specificeren we met \ g dat we een bestand gaan genereren voor de uitvoer van wat onze Query genereert. Dan met de functie lpad zal toestaan dat onze kolommen de structuur hebben s01, s01_perc, s02, s02_perc. We noemen het \ o commando om de dump in het bestand te stoppen, en om het bestand effectief te genereren gebruiken we het interactieve commando \ i.
Eindelijk kunnen we ons bestand uitvoeren met de opdracht:
psql -f build_stage.psql -d postgresql_book
Hiermee hebben we onze functionaliteit op een vrij eenvoudige manier gebouwd dankzij de tools van de console of de PSQL-opdrachtregel. Hiermee ronden we onze tutorial af, we weten al iets meer over de console en de verschillende omgevingen die hij aankan, zoals interactief en niet-interactief.