PostgreSQL Δημιουργία προβολής με Παράδειγμα

Τι είναι PostgreSQL Θέα?

In PostgreSQL, η προβολή είναι ψευδο-πίνακας. Αυτό σημαίνει ότι μια προβολή δεν είναι πραγματικός πίνακας. Ωστόσο, μπορούμε να το SELECT ως συνηθισμένο τραπέζι. Μια προβολή μπορεί να έχει όλες ή μερικές από τις στήλες του πίνακα. Μια προβολή μπορεί επίσης να είναι μια αναπαράσταση περισσότερων του ενός πινάκων.

Οι πίνακες αναφέρονται ως πίνακες βάσης. Όταν δημιουργείτε μια προβολή, χρειάζεται απλώς να δημιουργήσετε ένα ερώτημα και, στη συνέχεια, να του δώσετε ένα όνομα, καθιστώντας το ένα χρήσιμο εργαλείο για την αναδίπλωση περίπλοκων και κοινώς χρησιμοποιούμενων ερωτημάτων.

δημιουργία PostgreSQL Προβολές

Για να δημιουργήσετε ένα PostgreSQL προβολή, χρησιμοποιούμε την πρόταση CREATE VIEW. Ακολουθεί η σύνταξη αυτής της δήλωσης:

CREATE [OR REPLACE] VIEW view-name AS
  SELECT column(s)
  FROM table(s)
  [WHERE condition(s)];

Η παράμετρος OR REPLACE θα αντικαταστήσει την προβολή εάν υπάρχει ήδη. Εάν παραλειφθεί και η προβολή υπάρχει ήδη, θα επιστραφεί ένα σφάλμα.

Η παράμετρος view-name είναι το όνομα της προβολής που πρέπει να δημιουργήσετε.

Οι συνθήκες WHERE είναι επιλογές και πρέπει να ικανοποιούνται για να προστεθεί οποιαδήποτε εγγραφή στην προβολή.

Εξετάστε τον πίνακα τιμών που δίνεται παρακάτω:

Τιμή:

δημιουργία PostgreSQL Προβολές

Ας δημιουργήσουμε μια προβολή από τον παραπάνω πίνακα:

CREATE VIEW Price_View AS
  SELECT id, price
  FROM Price
  WHERE price > 200;

Η παραπάνω εντολή θα δημιουργήσει μια προβολή με βάση το Δήλωση SELECT. Μόνο οι εγγραφές όπου η τιμή είναι μεγαλύτερη από 200 θα προστεθούν στην προβολή. Στην προβολή έχει δοθεί το όνομα Price_View. Ας το ρωτήσουμε για να δούμε το περιεχόμενό του:

SELECT *
FROM Price_View;

Αυτό επιστρέφει τα ακόλουθα:

δημιουργία PostgreSQL Προβολές

Παρόλο που ο βασικός πίνακας έχει 4 εγγραφές, μόνο 2 προστέθηκαν στην προβολή.

Εδώ, μπορούμε να προσθέσουμε μόνο μία στήλη στην προβολή. Ας δημιουργήσουμε μια προβολή που περιλάμβανε μόνο μία στήλη του πίνακα Τιμών:

CREATE VIEW Price_View2 AS
  SELECT price
  FROM Price
  WHERE price > 200;

Στην προβολή έχει δοθεί το όνομα Price_View2 και περιλαμβάνει μόνο τη στήλη τιμών του πίνακα Τιμή. Ας ρωτήσουμε την προβολή για να δούμε τα περιεχόμενά της:

SELECT *
FROM Price_View2;

Αυτό επιστρέφει τα ακόλουθα:

δημιουργία PostgreSQL Προβολές

Αλλαγή PostgreSQL Προβολές

Ο ορισμός μιας προβολής μπορεί να αλλάξει χωρίς να χρειάζεται να την απορρίψετε. Αυτό γίνεται χρησιμοποιώντας τη δήλωση ΔΗΜΙΟΥΡΓΙΑ Ή ΑΝΤΙΚΑΤΑΣΤΑΣΗ ΠΡΟΒΟΛΗ.

Ας το δείξουμε αυτό ενημερώνοντας την προβολή με το όνομα Price_View2.

Τιμή_Προβολή2:

Αλλαγή PostgreSQL Προβολές

Ο πίνακας του βιβλίου έχει ως εξής:

Βιβλίο:

Αλλαγή PostgreSQL Προβολές

Ο πίνακας τιμών έχει ως εξής:

Τιμή:

Αλλαγή PostgreSQL Προβολές

Το ακόλουθο ερώτημα θα μας βοηθήσει να ενημερώσουμε την προβολή Price_View2:

CREATE or REPLACE VIEW Price_View2 AS
  SELECT price, name
  FROM Book
  INNER JOIN Price
  ON Book.id = Price.id
  WHERE price > 200;

Ας ρωτήσουμε τώρα την προβολή για να δούμε τα περιεχόμενά της:

Αλλαγή PostgreSQL Προβολές

Η προβολή έχει αλλάξει και τώρα έχουμε δύο στήλες από δύο διαφορετικούς πίνακες. Αυτό έχει επιτευχθεί χρησιμοποιώντας μια δήλωση JOIN.

Διαγραφή PostgreSQL Προβολές

Κάθε φορά που χρειάζεται να διαγράψετε ένα PostgreSQL θέα. Μπορείτε να χρησιμοποιήσετε τη δήλωση DROP VIEW. Εδώ είναι η σύνταξη για τη δήλωση:

DROP VIEW [IF EXISTS] view-name;

Η παράμετρος view-name είναι το όνομα της προβολής που πρόκειται να διαγραφεί.

Σε αυτή τη σύνταξη, το IF EXISTS είναι προαιρετικό. Απαιτείται μόνο. Εάν δεν το καθορίσετε και προσπαθήσετε να διαγράψετε μια προβολή που δεν υπάρχει, θα λάβετε ένα σφάλμα.

Για παράδειγμα, για να απορρίψουμε την προβολή με το όνομα Price_View2, μπορούμε να εκτελέσουμε την ακόλουθη πρόταση:

DROP VIEW Price_View2;

Η προβολή θα διαγραφεί.

Χρήση του pgAdmin

Τώρα ας δούμε πώς μπορούν να εκτελεστούν αυτές οι ενέργειες χρησιμοποιώντας το pgAdmin.

δημιουργία PostgreSQL Προβολές

Για να πετύχετε το ίδιο μέσω του pgAdmin, κάντε το εξής:

Βήμα 1) Συνδεθείτε στον λογαριασμό σας pgAdmin.

Βήμα 2)

  1. Από τη γραμμή πλοήγησης στα αριστερά - Κάντε κλικ στην επιλογή Βάσεις δεδομένων.
  2. Κάντε κλικ στο Demo.

δημιουργία PostgreSQL Προβολές με χρήση του pgAdmin

Βήμα 3) Πληκτρολογήστε το ερώτημα στο πρόγραμμα επεξεργασίας ερωτημάτων:

CREATE VIEW Price_View AS
  SELECT id, price
  FROM Price
  WHERE price > 200;

Βήμα 4) Κάντε κλικ στο κουμπί Εκτέλεση.

δημιουργία PostgreSQL Προβολές με χρήση του pgAdmin

Βήμα 5) Για να προβάλετε τα περιεχόμενα της προβολής, κάντε τα εξής:

  1. Πληκτρολογήστε την ακόλουθη εντολή στο πρόγραμμα επεξεργασίας ερωτημάτων:
  2. SELECT *
    FROM Price_View;
    
  3. Κάντε κλικ στο κουμπί Εκτέλεση.

δημιουργία PostgreSQL Προβολές με χρήση του pgAdmin

Αυτό θα επιστρέψει τα ακόλουθα:

δημιουργία PostgreSQL Προβολές με χρήση του pgAdmin

Για να δημιουργήσετε την προβολή Price_View2, κάντε τα εξής:

Βήμα 1) Πληκτρολογήστε το ακόλουθο ερώτημα στο πρόγραμμα επεξεργασίας ερωτημάτων:

CREATE VIEW Price_View2 AS
  SELECT price
  FROM Price
  WHERE price > 200;

Βήμα 2) Κάντε κλικ στο κουμπί Εκτέλεση.

δημιουργία PostgreSQL Προβολές με χρήση του pgAdmin

Βήμα 3) Για να δείτε τα περιεχόμενα της προβολής, κάντε τα εξής:

  1. Πληκτρολογήστε το ακόλουθο ερώτημα στο πρόγραμμα επεξεργασίας ερωτημάτων:
  2. SELECT *
    FROM Price_View2;
    
  3. Κάντε κλικ στο κουμπί Εκτέλεση.

δημιουργία PostgreSQL Προβολές με χρήση του pgAdmin

Αυτό θα επιστρέψει τα ακόλουθα:

δημιουργία PostgreSQL Προβολές με χρήση του pgAdmin

Αλλαγή PostgreSQL Προβολές

Για να πετύχετε το ίδιο μέσω του pgAdmin, κάντε το εξής:

Βήμα 1) Συνδεθείτε στον λογαριασμό σας pgAdmin.

Βήμα 2)

  1. Από τη γραμμή πλοήγησης στα αριστερά - Κάντε κλικ στην επιλογή Βάσεις δεδομένων.
  2. Κάντε κλικ στο Demo.

Αλλαγή PostgreSQL Προβολές με χρήση του pgAdmin

Βήμα 3) Πληκτρολογήστε το ερώτημα στο πρόγραμμα επεξεργασίας ερωτημάτων:

CREATE or REPLACE VIEW Price_View2 AS
  SELECT price, name
  FROM Book
  INNER JOIN Price
  ON Book.id = Price.id
  WHERE price > 200;

Βήμα 4) Κάντε κλικ στο κουμπί Εκτέλεση.

Αλλαγή PostgreSQL Προβολές με χρήση του pgAdmin

Βήμα 5) Πληκτρολογήστε το ακόλουθο ερώτημα στο πρόγραμμα επεξεργασίας ερωτημάτων:

SELECT * 
FROM Price_View2;

Αυτό θα επιστρέψει τα ακόλουθα:

Αλλαγή PostgreSQL Προβολές με χρήση του pgAdmin

Διαγραφή PostgreSQL Προβολές

Για να πετύχετε το ίδιο μέσω του pgAdmin, κάντε το εξής:

Βήμα 1) Συνδεθείτε στον λογαριασμό σας pgAdmin.

Βήμα 2)

  1. Από τη γραμμή πλοήγησης στα αριστερά - Κάντε κλικ στην επιλογή Βάσεις δεδομένων.
  2. Κάντε κλικ στο Demo.

Διαγραφή PostgreSQL Προβολές με χρήση του pgAdmin

Βήμα 3) Πληκτρολογήστε το ερώτημα στο πρόγραμμα επεξεργασίας ερωτημάτων:

DROP VIEW Price_View2;

Βήμα 4) Κάντε κλικ στο κουμπί Εκτέλεση.

Διαγραφή PostgreSQL Προβολές με χρήση του pgAdmin

Η προβολή θα διαγραφεί.

Σύνοψη

  • A PostgreSQL Η προβολή είναι ψευδο-πίνακας, που σημαίνει ότι δεν είναι πραγματικός πίνακας.
  • Μια προβολή μπορεί να δημιουργηθεί από έναν ή περισσότερους πίνακες.
  • Οι πίνακες από τους οποίους δημιουργείται μια προβολή είναι γνωστοί ως πίνακες βάσης.
  • Για να δημιουργήσουμε μια προβολή, χρησιμοποιούμε την πρόταση ΔΗΜΙΟΥΡΓΙΑ Ή ΑΝΤΙΚΑΤΑΣΤΑΣΗ ΠΡΟΒΟΛΗ.
  • Για να αλλάξουμε τον ορισμό μιας προβολής, χρησιμοποιούμε την πρόταση ΔΗΜΙΟΥΡΓΙΑ Ή ΑΝΤΙΚΑΤΑΣΤΑΣΗ ΠΡΟΒΟΛΗ.
  • Για να διαγράψουμε μια προβολή, χρησιμοποιούμε την πρόταση DROP VIEW.

Κάντε λήψη της βάσης δεδομένων που χρησιμοποιείται σε αυτό το σεμινάριο