Cuprins
PSQL este linia de comandă, consola livrată în mod implicit cu PostgreSQL, acest lucru ne permite să rulăm interogări și chiar ne permite să îl folosim ca instrument pentru a efectua scripturi automatizate, pentru a importa și exporta date, restaurări, administrarea bazelor de date și chiar ca generator de rapoarte de bază.Pentru a utiliza consola interactivă PSQL Mai întâi trebuie să știm ce comenzi putem folosi în acest mod, pentru aceasta putem accesa ajutorul general pe care îl avem folosind următoarea instrucțiune:
psql \?
Cu aceasta vom afișa o listă cu ceea ce putem folosi, în plus, dacă avem întrebări cu o declarație SQL, putem folosi acest ajutor pentru a obține informații specifice despre comanda menționată, de exemplu:
\ h CREAȚI TABEL
Acest lucru ne-ar da un rezultat ca cel pe care îl vom vedea în imaginea următoare.
Cum putem observa ajutorul ne arată toate opțiunile valide pe care le putem folosi atunci când executăm o comandă sau o instrucțiune SQL în linia noastră de comandă interactivă PSQL.
Consola non-interactivă înseamnă că cerem liniei de comandă să ruleze un fișier script care conține un amestec de instrucțiuni SQL cu comenzi PSQLPutem chiar să trecem în mod alternativ instrucțiuni SQL în apelul la execuție în consola non-interactivă. Acest lucru ne permite să facilităm crearea de sarcini automate, deoarece putem stoca instrucțiunile pe care dorim să le executăm într-un fișier și apoi să le programăm să fie executate atunci când avem nevoie de ele.
Pentru a executa un fișier, pur și simplu folosim parametrul -f după cum urmează
psql -f unele_script_file
Dacă nu avem comenzile într-un fișier, le putem transmite direct la consolă în felul următor:
psql -d postgresql_book -c "DROP TABLE IF EXISTES scoss; CREATE SCHEMA staging;"
După cum am văzut, putem include mai multe afirmații, atâta timp cât le separăm cu un punct și virgulă.
Să vedem cum să construim un fișier cu comenzi interactive în interior:
\ a \ t \ g create_script.sql SELECT 'CREATE TABLE staging.factfinder_import (geo_id varchar (255), geo_id2 varchar (255), geo_display varchar (255),' || array_to_string (array_agg ('s' || lpad (i :: text, 2, '0') || 'varchar (255), s' || lpad (i :: text, 2, '0') || '_perc varchar (255)'), ',') || ');' FROM generate_series (1,51) Ca i; \ o \ i create_script.sql
Folosim \ t pentru a elimina anteturile și \ a pentru a elimina elementele de pauză care sunt generate, apoi cu \ g specificăm că vom genera un fișier pentru ieșirea a ceea ce generează interogarea noastră. Apoi cu funcția lpad va permite coloanelor noastre să aibă structura s01, s01_perc, s02, s02_perc. Apelăm comanda \ o pentru a opri dump-ul în fișier, apoi pentru a genera în mod eficient fișierul folosim comanda interactivă \ i.
În cele din urmă, putem rula fișierul nostru cu comanda:
psql -f build_stage.psql -d postgresql_book
Cu aceasta ne-am construit funcționalitatea într-un mod destul de simplu datorită instrumentelor consolei sau liniei de comandă PSQL. Cu aceasta ne-am terminat tutorialul, știm deja puțin mai multe despre consolă și diferitele medii pe care le gestionează, cum ar fi interactiv și non-interactiv.