POSTGRESQL Η PostgreSQL είναι ένα αντικείμενο-σχεσιακό σύστημα διαχείρισης βάσεων δεδομένων (object relational database management system - ORDBMS) και.

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
ΣΧΕΣΙΑΚΗ ΑΛΓΕΒΡΑ 2 ΜΑΘΗΜΑ 4.
Advertisements

ΕΙΣΑΓΩΓΗ ΣΤΗΝ PHP. Τι θα μάθουμε;  Να καταλάβουμε τι είναι η PHP και πώς δουλεύουν τα PHP scripts  Τι χρειάζεται για να ξεκινήσουμε με την PHP  Να.
ΕΣΔ 232: Οργάνωση Δεδομένων στη Κοινωνία της Πληροφορίας © 2012 Nicolas Tsapatsoulis Φυσική Σχεδίαση – Υλοποίηση βάσης ΕΣΔ232 – Οργάνωση Δεδομένων στη.
Επιμέλεια: ΘΟΔΩΡΗΣ ΜΑΝΑΒΗΣ
ΕΣΔ 232: Οργάνωση Δεδομένων στη Κοινωνία της Πληροφορίας © 2013 Nicolas Tsapatsoulis Εισαγωγή στην SQL ΕΣΔ232 – Οργάνωση Δεδομένων στη Κοινωνία της Πληροφορίας.
Βάσεις Δεδομένων.
Βάσεις Δεδομένων 1 T.Manavis– N.Kyritsis.
Βάσεις Δεδομένων II Ευαγγελία Πιτουρά 1 Ασφάλεια και Δικαιοδοσία σε Βάσεις Δεδομένων.
 Αυδίκου Χριστίνα  Γιουμούκης Παναγιώτης  Κιντσάκης Θάνος  Πάπιστας Γιάννης.
Μοντέλο Οντοτήτων-Συσχετισμών
PL/SQL.
Ορισμοί Σχεσιακού Μοντέλου και (απλές)Τροποποιήσεις Σχέσεων στην SQL
Επιμέλεια: ΘΟΔΩΡΗΣ ΜΑΝΑΒΗΣ
Επιμέλεια: ΘΟΔΩΡΗΣ ΜΑΝΑΒΗΣ
Entity-Relationship Παραδείγματα Πληροφοριακά Συστήματα και Βάσεις Δεδομένων Φροντιστήριο 1 Δαμιανός Χατζηαντωνίου.
9 Η Γλώσσα SQL Εισαγωγή – Βασικές Έννοιες Τύποι Δεδομένων
ΕΡΩΤΗΜΑΤΑ ΕΠΙΛΟΓΗΣ ΜΕ ΣΥΖΕΥΞΗ ΠΙΝΑΚΩΝ
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων.
1919 Αντικειμενο-σχεσιακά ΣΔΒΔ  Εμφωλιασμένες Σχέσεις  Το Πρότυπο SQL:1999 (SQL3)  Σύγκριση Συστημάτων.
9 Η Γλώσσα SQL Ορισμός Δεδομένων (data definition)
1 Εισαγωγή στις Βάσεις Δεδομένων  Ανάγκη Αποθήκευσης και Διαχείρισης Δεδομένων  Συστήματα Αρχείων  Συστήματα Βάσεων Δεδομένων  Παραδοσιακές και Σύγχρονες.
Βάσεις Δεδομένων Εργαστήριο Ι Τμήμα Πληροφορικής ΑΠΘ
Βάσεις Δεδομένων Ι Ενότητα 7: H γλώσσα SQL Γεωργία Γκαράνη Επίκουρος Καθηγήτρια Τμήμα Μηχανικών Πληροφορικής Τ.Ε. T.E.I. Θεσσαλίας.
PHP/MYSQL ΠΑΡΟΥΣΙΑΣΗ ΣΤΑ ΠΛΑΙΣΙΑ ΤΟΥ ΜΑΘΗΜΑΤΟΣ ΕΠΟΙΚΟΙΝΩΝΙΑ ΑΝΘΡΩΠΟΥ-ΜΗΧΑΝΗΣ ΤΥΡΟΛΟΓΟΥ ΓΛΥΚΕΡΙΑ ΑΜ 875 ΡΙΖΟΥ ΔΕΣΠΟΙΝΑ ΑΜ 816.
ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ - Ι Λόγοι που συνέτειναν στη υιοθέτηση των Συστημάτων Διαχείρισης Βάσεων Δεδομένων (Database Management Systems) Περιορίζονται τα πλεονασματικά.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων.
9 Η Γλώσσα SQL  Εισαγωγή – Βασικές Έννοιες  Τύποι Δεδομένων  Ορισμός Δεδομένων  Χειρισμός Δεδομένων.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Σχεσιακή Άλγεβρα.
9 Η Γλώσσα SQL  Εισαγωγή – Βασικές Έννοιες  Τύποι Δεδομένων  Ορισμός Δεδομένων (data definition)  Χειρισμός Δεδομένων (data manipulation)
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Σχεσιακή Άλγεβρα.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Η Γλώσσα SQL.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Η Γλώσσα SQL.
ΗΥ-340 Γλώσσες και Μεταφραστές Φροντιστήριο Syntax Directed Translation and alpha Language.
Βασικά στοιχεία της Java
Βάσεις Δεδομένων Αρχιτεκτονική.
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ « Advanced MySQL » Σμυρνάκη Ουρανία, Πανεπιστήμιο Κρήτης Σεμινάριο: 2ο Σχολείο Κώδικα Ημερομηνία: 10/07/2015 Με.
ΕΣΔ 232: Οργάνωση Δεδομένων στη Κοινωνία της Πληροφορίας © 2012 Nicolas Tsapatsoulis Το σχεσιακό μοντέλο βάσεων δεδομένων ΕΣΔ232 – Οργάνωση Δεδομένων στη.
ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Κ.ΑΛΑΦΟΔΗΜΟΣ καθηγητής Δ.Παπαχρήστος μέλος ΕΔΙΠ ΑΕΙ ΠΕΙΡΑΙΑ ΤΤ ΠΑΝΕΠΙΣΤΗΜΙΟ Α ΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ.
Βάσεις Δεδομένων Κεφ. 1 Πλεονεκτήματα Β.Δ. έναντι αρχείων Βασικές λειτουργίες Β.Δ. Εφαρμογές Β.Δ. στην καθημερινή ζωή.
ΜΕΤΑΒΛΗΤΕΣ-ΣΤΑΘΕΡΕΣ -ΕΚΦΡΑΣΕΙΣ
Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας
Βάσεις Δεδομένων Ι 4η διάλεξη
ΤΙΤΛΟΣ ΕΡΓΑΣΙΑΣ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ανδρέου Βασίλης.
Αρχιτεκτονική Συστημάτων
Θερινό Σχολείο, 14 – 20 Ιουλίου 2014
Βάσεις Δεδομένων Ι Επανάληψη
Εισαγωγή στις βάσεις δεδομένων ISBN
Java DataBase Connectivity
Βάσεις Δεδομένων Ενότητα 3: Σχεσιακή Άλγεβρα Βασίλης Βουτσινάς
9 Η Γλώσσα SQL Εισαγωγή – Βασικές Έννοιες Τύποι Δεδομένων
Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας
Αρχιτεκτονική Συστημάτων
ΔΟΜΕΣ ΕΛΕΓΧΟΥ(if-else, switch) και Λογικοί τελεστές / παραστάσεις
Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL
Βάσεις Δεδομένων Εισαγωγή για το Εργαστήριο Δρ. Τιάκας Ελευθέριος
Το Σχεσιακό Μοντέλο Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
Βάσεις Δεδομένων Κωδικός Μαθήματος: MK741
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
Ενότητα 2 : Το σύστημα βάσεων δεδομένων MySQL (II) Ιωάννης Τσούλος
Βάσεις Δεδομένων και web-based Εφαρμογές
Αρχιτεκτονική Συστημάτων
Αντικειμενο-σχεσιακά ΣΔΒΔ
Σχεσιακεσ βασεισ δεδομενων
Ερωτήματα Επιλογής σε ACCESS
Ερωτήματα Επιλογής Δεδομένων
pgAdmin III (Εκκίνηση)
Επεξεργασία Χωρικών δεδομένων
Ενότητα # 5: Περιορισμοί ακεραιότητας
ΠΑΡΑΔΕΙΓΜΑΤΑ SQL Ή ΠΑΡΑΔΕΙΓΜΑΤΑ SQL Ή
Μεταγράφημα παρουσίασης:

POSTGRESQL Η PostgreSQL είναι ένα αντικείμενο-σχεσιακό σύστημα διαχείρισης βάσεων δεδομένων (object relational database management system - ORDBMS) και έχει τα παρακάτω χαρακτηριστικά : Λογισμικό ανοικτού κώδικα. Τρέχει σε όλα τα βασικά λειτουργικά συστήματα (unix/linux windows). Προσφέρει ειδικούς τύπους δεδομένων για την αποθήκευση απλών γεωμετρικών οντοτήτων Μηχανισμούς δεικτοδότησης χωρικών δεδομένων όπως τετραδικά και R-δένδρα Περιορισμένο αριθμό γεωμετρικών τελεστών και συναρτήσεων για την διατύπωση χωρικών ή συνδυασμένων ερωτημάτων. Η PostgreSQL επιτρέπει τη συνεργασία με πληθώρα επιπρόσθετων σπονδύλων λογισμικού (addons) μέσω των οποίων γίνεται η εκτέλεση συγκεκριμένων και εξειδικευμένων λειτουργιών. Η επέκταση χωρικών λειτουργιών επιτυγχάνεται σε συνεργασία με το λογισμικό ανοικτού κώδικα PostGIS το οποίο ακολουθεί το πρότυπο OGC για τον ορισμό γεωγραφικών στοιχείων σε περιβάλλον SQL. Η PostgreSQL με την επέκταση λειτουργιών PostGIS αποτελεί ένα σύστημα κατάλληλο για ανάπτυξη και διαχείριση χωρικών βάσεων δεδομένων. . Η δεικτοδότηση με R-δένδρα είναι μία από τις πιο αποτελεσματικές μεθόδους δεικτοδότησης σε χωρικά δεδομένα. Πρότυπα Open Geospatial Consortium ορίζει ανοιχτά πρότυπα διεπαφής και κωδικοποίησης, καθώς επίσης και βέλτιστες τεχνικές, που επιτρέπουν στους προγραμματιστές να δημιουργούν πληροφοριακά συστήματα τα οποία μπορούν εύκολα να ανταλλάσουν χωρική πληροφορία και να αλληλεπιδρούν με άλλα πληροφοριακά συστήματα. http://dasodata.gr/index.php/open-geospatial-consortium 22:50

pgAdmin III Η PostGreSQL δεν έχει ή ίδια κάποιο γραφικό περιβάλλον διεπαφής με τον χρήστη. Για την αλληλεπίδραση με την βάση δεδομένων χρησιμοποιείται ένα πρόγραμμα χρήστη (client) το pgAdminn III που παρέχεται και εγκαθίσταται μαζί με την PostGreSQL. Το pgAdmin III και έχει τα παρακάτω χαρακτηριστικά : Είναι ένα ολοκληρωμένο σύστημα σχεδιασμού και διαχείρισης βάσεων δεδομένων και αποτελεί το μέσο αλληλεπίδρασης της βάσης δεδομένων με το χρήστη. Είναι γραμμένο σε C++ και είναι δυνατό να χρησιμοποιηθεί σε περιβάλλοντα Linux, FreeBSD, Solaris, Mac OSX και Windows για τη διαχείριση της PostgreSQL. Προσφέρει ένα απλό γραφικό περιβάλλον για την ανάπτυξη πολύπλοκων βάσεων δεδομένων μέσω της διατύπωσης ερωτημάτων σε SQL, με στόχο την απλούστευση των διαδικασιών για το χρήστη Είναι ελεύθερο λογισμικό και δεν απαιτεί επιπλέον προγράμματα για την επικοινωνία με τον διακομιστή της βάσης δεδομένων. 22:50

Σχεσιακή Άλγεβρα Περιλαμβάνει ένα βασικό σύνολο πράξεων στο σχεσιακό μοντέλο. Οι πράξεις αυτές ικανοποιούν την ιδιότητα της κλειστότητας δηλαδή δέχονται σχέσεις και παράγουν σχέσεις. Αυτές οι πράξεις είναι χρήσιμες για την διατύπωση αιτημάτων ανάκτησης χρηστών προς τη βάση. Οι πράξεις της σχεσιακής άλγεβρας χωρίζονται σε 2 ομάδες: Η πρώτη ομάδα περιλαμβάνει τις βασικές πράξεις συνόλων όπως είναι η ένωση, η τομή, η διαφορά και το καρτεσιανό γινόμενο. Η δεύτερη ομάδα περιλαμβάνει την προβολή, τον περιορισμό και την συνένωση. 22:50

Παραδείγματα Η πράξη της προβολής π<λίστα πεδίων>(πίνακας) Επιλέγουμε κάποιες στήλες από τον πίνακα Παράδειγμα π<am,lastname,firstname>(students) Η πράξη του περιορισμού σ<συνθήκη>(πίνακας) Επιλέγουμε κάποιες κάποιες εγγραφές από τον πίνακα Παράδειγμα σ<city=‘Ηράκλειο’>(students) Περισσότερες πράξεις σε μία έκφραση. Παράδειγμα π<am,lastname,firstname>(σ <city=‘Ηράκλειο’>( students)) H πράξη του καρτεσιανού γινομένου πίνακας1 X πίνακας2 Παράδειγμα studentsXgrades H πράξη της συνένωσης πίνακας1 <συνθήκη συνένωσης> πίνακας2 Παράδειγμα students <students.am=grades.am> grades 22:50

SQL (Structured Query Language ) Αποτελεί την κοινή γλώσσα όλων των Σχεσιακών ΣΔΒΔ (standard) Η ανάπτυξη των σχεσιακών πράξεων στην SQL είναι πιο απλή από ότι στην σχεσιακή άλγεβρα Η SQL είναι μια πλήρης γλώσσα που περιλαμβάνει εντολές για –Γλώσσα ορισμού δεδομένων(DDL Data Definition Language) –Γλώσσα ενημέρωσης δεδομένων(DML Data Manipulation Language) – ερωτήσεις(Query Language) Πολλές γλώσσες προγραμματισμού έχουν επεκταθεί ώστε να υποστηρίζουν διατύπωση ερωτημάτων σε SQL π.χ. Java, C/C++, Pascal/Delphi, Visual Basic, php,… 22:50

Τύποι Δεδομένων Για συμβολσειρές char(n) σταθερού μήκους, και varchar(n) ή varying(n) μεταβλητού μήκους. Για ακεραίους integer(ή int) smallint Αριθμοί κινητής υποδιαστολής float[ακρίβεια], real, double precision numeric(p, d) ή decimal(p, d) (p ψηφία συνολικά από τα οποία d είναι δεκαδικά) Δυαδικές τιμές bit bit(n) Ημερομηνία-ώρα date (yyyy-mm-dd) time (hh:mm:ss) timestamp[ακρίβεια] yyyy-mm-dd hh:mm:ss._ _ _       22:50

Γλώσσα Ορισμού Δεδομένων Δημιουργία βάσης. CREATE DATABASE peroysiologio WITH ENCODING='UTF8‘ OWNER = postgres TABLESPACE = pg_default; Δημιουργία Σχήματος (τα στοιχεία της βάσης(πίνακες,οψεις,συναρτήσεις…) ομαδοποιούνται σε σχήματα. CREATE SCHEMA onoma_sximatos ; Δημιουργία Πίνακα CREATE TABLE onoma_pinaka (col_1 data type [NOT NULL] [DEFAULT arxiki timi], col_2 data type [NOT NULL] [DEFAULT arxiki timi], … col_N …, PERIORISMOS_AKAIREOTHTAS_1, PERIORISMOS_AKAIREOTHTAS_2, … PERIORISMOS_AKAIREOTHTAS_N, ); Διαγραφή DROP SCHEMA onoma_sximatos, DROP TABLE onoma_pinaka Αλλαγή Πίνακα ALTER TABLE onoma_pinaka ADD COLUMN column_name data type ); ALTER TABLE onoma_pinaka DROP COLUMN column_name ALTER TABLE onoma_pinaka ADD CONSTRAINT PERIORISMOS_AKAIREOTHTAS;       22:50

Περιορισμοί Ακεραιότητας Επιβολή ακεραιότητας σε επίπεδο στηλών: Αρχική τιμή Default Value NOT NULL υποψήφια κλειδιά Unique(Columns) πρωτεύων κλειδί Primary Key(Columns) Ακεραιότητα αναφοράς (ξένα κλειδιά) Foreign key column references table(column) Σημασιολογικοί περιορισμοί CHECK (YEAR>2000) Επιβολή ακεραιότητας Foreign key : On delete cascade ή restrict ή set null ή set default On update cascade ή restrict ή set null ή set default       22:50

ΟΡΙΣΜΟΣ ΔΕΔΟΜΕΝΩΝ ΠΕΡΟΥΣΙΟΛΟΓΙΟΥ Δημιουργία βάσης. CREATE DATABASE peroysiologio WITH ENCODING='UTF8' OWNER = postgres TABLESPACE = pg_default; Δημιουργία πίνακα ιδιοκτήτες. CREATE TABLE idioktites( afm VARCHAR(12) NOT NULL, adt VARCHAR (8) NOT NULL, eponymo VARCHAR(20) not null, onoma VARCHAR(15), tilefono VARCHAR(15), odos VARCHAR(20), arithmos INTEGER, poli VARCHAR(20), tk VARCHAR(10), CONSTRAINT pr_key_idiokt PRIMARY KEY(AFM), CONSTRAINT uniq_idiokt UNIQUE (ADT)); Δημιουργία πίνακα Αγροκτήματα. CREATE TABLE agroktimata( code VARCHAR(10) NOT NULL, toponymio VARCHAR(30), oikismos VARCHAR(20), poli VARCHAR(20), elaiodentra INTEGER, CONSTRAINT pr_key_agro PRIMARY KEY (code)); 22:50

ΟΡΙΣΜΟΣ ΔΕΔΟΜΕΝΩΝ ΠΕΡΟΥΣΙΟΛΟΓΙΟΥ (Συνέχεια) Δημιουργία πίνακα ιδιοκτησίες CREATE TABLE idioktisies( afm VARCHAR(12) NOT NULL, code VARCHAR(10) NOT NULL, pososto smallint, CONSTRAINT pr_key_idioktis PRIMARY KEY(AFM,code), CONSTRAINT check_psosto CHECK(pososto<=100 AND pososto>0), CONSTRAINT forkey_afm FOREIGN KEY (afm) REFERENCES idioktites(afm) MATCH SIMPLE ON UPDATE RESTRICT ON DELETE RESTRICT, CONSTRAINT forkey_code FOREIGN KEY(code) REFERENCES agroktimata(code) MATCH SIMPLE ON UPDATE RESTRICT ON DELETE RESTRICT); 22:50

Γλώσσα Επεξεργασίας Δεδομένων Εισαγωγή Δεδομένων INSERT INTO onoma_pinaka VALUES (value1, value2, … ) INSERT INTO onoma_pinaka(col1, col2, col3) VALUES(value_1, value_2, value_3); Ενημέρωση Δεδομένων UPDATE onoma_pinaka set col_1=value1, … col_N=value_N where συνθήκη Διαγραφή Δεδομένων DELETE From onoma_pinaka where συνθήκη       22:50

Επεξεργασία Δεδομένων Περιουσιολογίου Εισαγωγή Δεδομένων INSERT INTO idioktites VALUES('123456789', 'ΖΛ123456', 'Παπαδάκης', 'Γιάννης', '2345678', 'Καλοκαιρινού', 100,'Ηράκλειο', '71410'); INSERT INTO idioktites (afm,adt,eponymo,onoma,poli) VALUES ('1234562000','ΖH123456', 'Τσαγκάρης', 'Νίκος', 'Ηράκλειο'); Ενημέρωση Δεδομένων UPDATE idioktites SET eponymo='Τσαγκαράκης', poli='Χανιά' WHERE adt='ΖH123456'; Διαγραφή Δεδομένων DELETE FROM idioktites WHERE afm='1234562000'; 22:50

Backup-Restore Backup Restore Από τα tools κλικάρουμε Backup Στο παράθυρο που εμφανίζεται ορίζουμε το ονομα και τη θέση που θα αποθηκευτεί το backup. Και πατάμε το πλήκτρο backup. Restore Δημιουργούμε μια κενή βάση δεδομένων ή το αντικείμενο που θέλουμε να κάνουμε restore. Επιλέγουμε το αντικείμενο που μόλις δημιουργήσαμε και από τα tools κλικάρουμε restore 22:50