PostgreSQL Loo vaade näite abil
Mis on PostgreSQL Kas vaadata?
In PostgreSQL, vaade on pseudotabel. See tähendab, et vaade ei ole päris tabel. Küll aga saame selle VALIDA tavalise tabelina. Vaatel võivad olla kõik või mõned tabeli veerud. Vaade võib olla ka rohkem kui ühe tabeli esitus.
Tabeleid nimetatakse alustabeliteks. Vaate loomisel peate lihtsalt looma päringu ja andma sellele nime, muutes selle kasulikuks tööriistaks keerukate ja sageli kasutatavate päringute pakkimiseks.
loomine PostgreSQL views
Et luua a PostgreSQL vaates kasutame lauset CREATE VIEW. Siin on selle avalduse süntaks:
CREATE [OR REPLACE] VIEW view-name AS SELECT column(s) FROM table(s) [WHERE condition(s)];
Parameeter OR REPLACE asendab vaate, kui see on juba olemas. Kui see jäetakse välja ja vaade on juba olemas, tagastatakse viga.
Parameeter vaate nimi on selle vaate nimi, mille peate looma.
Tingimus(ed) WHERE on valikud ja need peavad olema täidetud, et vaatesse saaks lisada mis tahes kirje.
Mõelge allpool toodud hinnatabelile:
Hind:
Loome ülaltoodud tabelist vaate:
CREATE VIEW Price_View AS SELECT id, price FROM Price WHERE price > 200;
Ülaltoodud käsk loob vaate, mis põhineb SELECT avaldus. Vaatele lisatakse ainult need kirjed, mille hind on suurem kui 200. Vaatele on antud nimi Price_View. Sisu nägemiseks küsime seda:
SELECT * FROM Price_View;
See tagastab järgmise:
Kuigi baastabelis on 4 kirjet, lisati vaatesse ainult 2.
Siin saame vaatele lisada ainult ühe veeru. Loome vaate, mis sisaldab ainult ühte hinnatabeli veergu:
CREATE VIEW Price_View2 AS SELECT price FROM Price WHERE price > 200;
Vaade on saanud nimetuse Price_View2 ja sisaldab ainult hinna tabeli hinna veergu. Küsige vaadet, et näha selle sisu:
SELECT * FROM Price_View2;
See tagastab järgmise:
Muutuv PostgreSQL views
Vaate määratlust saab muuta, ilma et peaksite seda loobuma. Seda tehakse käsu CREATE OR REPLACE VIEW abil.
Näitame seda, värskendades vaadet nimega Price_View2.
Price_View2:
Raamatute tabel on järgmine:
Raamat:
Hinnatabel on järgmine:
Hind:
Järgmine päring aitab meil vaadet Price_View2 värskendada:
CREATE or REPLACE VIEW Price_View2 AS SELECT price, name FROM Book INNER JOIN Price ON Book.id = Price.id WHERE price > 200;
Teeme nüüd vaate päringu, et näha selle sisu:
Vaade on muudetud ja nüüd on meil kaks veergu kahest erinevast tabelist. See on saavutatud JOIN-lause abil.
kustutamine PostgreSQL views
Iga kord, kui peate kustutama a PostgreSQL vaade. Võite kasutada DROP VIEW avaldust. Siin on avalduse süntaks:
DROP VIEW [IF EXISTS] view-name;
Parameeter view-name on kustutatava vaate nimi.
Selles süntaksis on IF EXISTS valikuline. See on ainult nõutav. Kui te seda ei määra ja proovite kustutada vaadet, mida pole olemas, kuvatakse tõrketeade.
Näiteks kuva nimega Price_View2 loobumiseks saame käivitada järgmise avalduse:
DROP VIEW Price_View2;
Vaade kustutatakse.
pgAdmini kasutamine
Nüüd vaatame, kuidas neid toiminguid pgAdmini abil teha saab.
loomine PostgreSQL views
Sama tegemiseks pgAdmini kaudu tehke järgmist:
Step 1) Logige sisse oma pgAdmini kontole.
Step 2)
- Vasakpoolsel navigeerimisribal klõpsake nuppu Andmebaasid.
- Klõpsake Demo.
Step 3) Sisestage päring päringuredaktorisse:
CREATE VIEW Price_View AS SELECT id, price FROM Price WHERE price > 200;
Step 4) Klõpsake nuppu Käivita.
Samm 5) Vaate sisu vaatamiseks tehke järgmist.
- Tippige päringuredaktorisse järgmine käsk:
- Klõpsake nuppu Käivita.
SELECT * FROM Price_View;
See tagastab järgmise:
Vaate Price_View2 loomiseks tehke järgmist.
Step 1) Tippige päringuredaktorisse järgmine päring:
CREATE VIEW Price_View2 AS SELECT price FROM Price WHERE price > 200;
Samm 2) Klõpsake nuppu Käivita.
Step 3) Vaate sisu vaatamiseks tehke järgmist.
- Tippige päringuredaktorisse järgmine päring:
- Klõpsake nuppu Käivita.
SELECT * FROM Price_View2;
See tagastab järgmise:
Muutuv PostgreSQL views
Sama tegemiseks pgAdmini kaudu tehke järgmist:
Step 1) Logige sisse oma pgAdmini kontole.
Step 2)
- Vasakpoolsel navigeerimisribal klõpsake nuppu Andmebaasid.
- Klõpsake Demo.
Step 3) Sisestage päring päringuredaktorisse:
CREATE or REPLACE VIEW Price_View2 AS SELECT price, name FROM Book INNER JOIN Price ON Book.id = Price.id WHERE price > 200;
Step 4) Klõpsake nuppu Käivita.
Step 5) Tippige päringuredaktorisse järgmine päring:
SELECT * FROM Price_View2;
See tagastab järgmise:
kustutamine PostgreSQL views
Sama tegemiseks pgAdmini kaudu tehke järgmist:
Step 1) Logige sisse oma pgAdmini kontole.
Step 2)
- Vasakpoolsel navigeerimisribal klõpsake nuppu Andmebaasid.
- Klõpsake Demo.
Step 3) Sisestage päring päringuredaktorisse:
DROP VIEW Price_View2;
Step 4) Klõpsake nuppu Käivita.
Vaade kustutatakse.
kokkuvõte
- A PostgreSQL vaade on pseudotabel, mis tähendab, et see pole päris tabel.
- Vaate saab luua ühest või mitmest tabelist.
- Tabeleid, millest vaade luuakse, nimetatakse baastabeliteks.
- Vaate loomiseks kasutame käsku CREATE OR REPLACE VIEW.
- Vaate definitsiooni muutmiseks kasutame käsku CREATE OR REPLACE VIEW.
- Vaate kustutamiseks kasutame käsku DROP VIEW.
Laadige alla selles õpetuses kasutatud andmebaas