ΔΙΟΙΚΗΣΗ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ
Download
Report
Transcript ΔΙΟΙΚΗΣΗ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ
ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ - Ι
Λόγοι που συνέτειναν στη υιοθέτηση των Συστημάτων Διαχείρισης
Βάσεων Δεδομένων (Database Management Systems)
Περιορίζονται τα πλεονασματικά δεδομένα και οι περιπτώσεις
μεταξύ τους ασυνέπειας και αυξάνεται η διαμοιρασιμότητά τους
στις διάφορες εφαρμογές
Βελτιώνεται η ακεραιότητα των δεδομένων
Αυξάνεται η ταχύτητα υλοποίησης νέων υποσυστημάτων
Διευκολύνεται η πρόσβαση στα αρχεία από τους προγραμματιστές
Αυξάνεται η ανεξαρτησία δεδομένων
Παρέχεται μία συγκροτημένη άποψη δεδομένων πιο κατάλληλη
για τις ανάγκες του management
Βελτιώνονται τα standards για τους ανθρώπους που εργάζονται
στην ανάπτυξη συστημάτων
ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ - ΙΙ
Η
ΟΡΓΑΝΩΣΗ
ΥΛΟΠΟΙΗΣΗ
ΕΦΑΡΜΟΓΩΝ
ΕΠΙΧΕΙΡΗΣΙΑΚΟ
ΜΟΝΤΕΛΟ
ΕΠΙΧΕΙΡΗΣΙΑΚΗ
ΑΝΑΛΥΣΗ
ΘΕΜΕΛΙΩΔΕΣ
ΜΟΝΤΕΛΟ
ΑΝΑΛΥΣΗ
ΔΕΔΟΜΕΝΩΝ
ΛΟΓΙΚΟ
ΜΟΝΤΕΛΟ
ΑΝΑΠΤΥΞΗ
ΜΟΝΤΕΛΟΥ ΒΑΣΗΣ
ΔΕΔΟΜΕΝΩΝ
ΦΥΣΙΚΟ
ΜΟΝΤΕΛΟ
ΟΡΓΑΝΩΣΗ ΑΡΧΕΙΩΝ
ΚΑΙ ΣΤΡΑΤΗΓΙΚΕΣ
ΠΡΟΣΠΕΛΑΣΗΣ
ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ - ΙΙΙ
Θεμελιώδες μοντέλο
Αναγνωρίζουμε τις πραγματικότητες της επιχειρηματικής οργάνωσης
και στη συνέχεια αναλύουμε τα δεδομένα. Οι πραγματικότητες
εκφράζονται μέσω αντικειμένων που αποκαλούνται οντότητες
(entities) και δεδομένων που αφορούν τις οντότητες και καλούνται
ιδιότητες (attributes).
ΠΑΡΑΔΕΙΓΜΑ:
Σε ένα πανεπιστημιακό τμήμα ΜΑΘΗΜΑΤΑ, ΦΟΙΤΗΤΕΣ και
ΚΑΘΗΓΗΤΕΣ θα μπορούσαν να εκφράζονται από οντότητες. Η
οντότητα ΜΑΘΗΜΑ θα έχει ιδιότητες όπως όνομα_μαθήματος,
περιγραφή, διάρκεια, έτος κ.α.
Μας ενδιαφέρουν ακόμη οι σχέσεις (relationships) μεταξύ των
οντοτήτων. Έτσι, οι ΦΟΙΤΗΤΕΣ διδάσκονται από πολλούς
ΚΑΘΗΓΗΤΕΣ.
ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ - ΙV
Λογικό μοντέλο
Έχοντας καταλήξει σε ένα θεμελιώδες μοντέλο μπορούμε αυτό να το
αντιστοιχίσουμε σε ένα Σύστημα Διαχείρισης Βάσεων Δεδομένων
(DBMS). Η μορφή που θα έχει μία τέτοια αντιστοίχιση λέγεται λογικό
μοντέλο και αυτή εξαρτάται από το σύστημα DBMS που
χρησιμοποιείται.
Στις σχεσιακές βάσεις δεδομένων το λογικό μοντέλο ορίζεται στη
βάση σχέσεων (πινάκων), αλλά σε άλλου τύπου DBMS μπορεί αυτό
να παίρνει μία άλλη μορφή.
MANAGER
SUPPLIER
NAME
Assistant
manager A
Clerk 1
Clerk 2
Assistant
manager B
Clerk 3
SUPPLIER SUPPLIER
ADDRESS NUMBER
1
2
3
4
PART
NUMBER
A
B
C
D
DESCRIPTION
ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ - V
Φυσικό μοντέλο
Αντιστοίχιση των δομών δεδομένων του λογικού μοντέλου σε ένα
αποθηκευτικό μέσο και αποθήκευση των δεδομένων.
ΟΡΓΑΝΩΣΗ ΑΡΧΕΙΩΝ: πως είναι οργανωμένα τα δεδομένα στο δίσκο
ΠΡΟΣΠΕΛΑΣΗ ΑΡΧΕΙΩΝ: πως τα δεδομένα προσπελαύνονται στο
δίσκο
Υπάρχουν διάφορες επιλογές από τα διάφορα DBMS για την οργάνωση
των αρχείων (π.χ. κεντρικά ή κατανεμημένα, με ή χωρίς εφεδρικά
αντίγραφα, χρήση ευρετηρίων ή όχι κ.ο.κ.).
ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ ΔΕΔΟΜΕΝΩΝ - Ι
Πεδίο (field)
Είναι η μικρότερη μονάδα δεδομένων που μπορεί να πάρει δικό της
όνομα π.χ. η τιμή ενός προϊόντος. Το ονοματεπώνυμο ενός υπαλλήλου
μπορεί να χωριστεί σε δύο πεδία ή μπορεί να θεωρηθεί και ως ένα
πεδίο αν δεν ενδιαφερόμαστε να έχουμε ξεχωριστά το Επώνυμο και το
Όνομα.
Λογικά χαρακτηριστικά δεδομένων
Κάθε πεδίο δεδομένων παίρνει μια συγκεκριμένη τιμή από ένα χώρο
δυνατών τιμών.
Η τιμή ενός πεδίου μπορεί να είναι:
1. Αριθμητική
2. Αλφαβητική
3. Αλφαριθμητική
Έτσι έχουμε τρεις τύπους πεδίων δεδομένων.
ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ ΔΕΔΟΜΕΝΩΝ - ΙΙ
Λογικά χαρακτηριστικά δεδομένων (συνέχεια)
Αν ένα πεδίο δεδομένων είναι αριθμητικό τότε η τιμή που περιέχει
ανταποκρίνεται σε κάποια μονάδα μέτρησης π.χ. 100 δραχμές, 800
κιλά κ.λ.π.
Η μονάδα μέτρησης γίνεται ένα πρόσθετο χαρακτηριστικό που μας
ενδιαφέρει άμεσα, αν και η μονάδα μέτρησης δεν είναι αναγκαίο να
αποτελεί μέρος του πεδίου.
Γενικά, ο τύπος ενός πεδίου είναι φανερός από την τιμή του, ενώ η
μονάδα μέτρησης δεν είναι.
Η σημασία που έχει ένα πεδίο είναι ένα χαρακτηριστικό που δίνεται
από το χρήστη, μπορεί να αναγνωριστεί από την τιμή του και τη
μονάδα μέτρησης, αλλά όχι πάντα με ασφάλεια.
π.χ. η τιμή ΕΛΛΗΝΑΣ μπορεί να αναφέρεται σε έναν έλληνα μπορεί
όμως να είναι και κάποιο επώνυμο
π.χ. η τιμή 342 € τι σημασία έχει; Πρόκειται για λεφτά που κάνει να
πάρουμε ή που πρόκειται να δώσουμε;
ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ ΔΕΔΟΜΕΝΩΝ - ΙΙΙ
Φυσικά χαρακτηριστικά δεδομένων
Ένα φυσικό χαρακτηριστικό πεδίου δεδομένων είναι το φυσικό
μέγεθος του πεδίου το οποίο συνήθως εκφράζεται σε αριθμό
χαρακτήρων (bytes). Στους πιο πολλούς υπολογιστές τέσσερα bytes
κάνουν μία λέξη η οποία και χρησιμοποιείται σαν η βασική μονάδα
για αριθμητικές πράξεις.
Αν ένα πεδίο πρόκειται να χρησιμοποιηθεί σε αριθμητικές πράξεις
καλό είναι να το βάζουμε μόνο του σε μία λέξη. Οι πράξεις θα γίνουν
πολύ πιο γρήγορα.
π.χ. έστω δύο πεδία δεδομένων με τιμές
ABC
και
254
που τις βάζουμε σε 6 συνεχόμενα bytes και θέλουμε να
χρησιμοποιήσουμε το 254 σε πράξεις
Α
Β
C
2
5
4
ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ ΔΕΔΟΜΕΝΩΝ - ΙV
Φυσικά χαρακτηριστικά δεδομένων (συνέχεια)
Έτσι, είναι προτιμότερο α βάλουμε τα δύο πεδία σε δύο λέξεις ως
εξής:
A
B
C
2
5
4
Γενικά, η εγγραφή των δεδομένων και το πόσο χώρο θα καταλάβουν
εξαρτάται από τον τρόπο παράστασης των δεδομένων στον H/Y.
Μορφή πεδίου δεδομένων
Τύπος πεδίου:
Αριθμητικό, Αλφαβητικό, Αλφαριθμητικό
για τα αριθμητικά θα έχουμε επιπλέον: ακέραιο ή πραγματικό
Τρόπος αναπαράστασης: δεκαδικός, δυαδικός, απλή ή διπλή
ακρίβεια κ.λ.π.
Μήκος πεδίου: πλήθος χαρακτήρων
ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ ΔΕΔΟΜΕΝΩΝ - V
Αναγνώριση πεδίου
Ο εντοπισμός ενός πεδίου γίνεται με βάση τη θέση που αυτό έχει μέσα
στην εγγραφή.
Στις Βάσεις Δεδομένων ένα πεδίο μπορεί επίσης να αναγνωριστεί και
με το όνομά του.
Εγγραφές και Αρχεία
Κάθε εγγραφή αποτελείται από ένα πεπερασμένο πλήθος πεδίων.
Πολλές φορές εξυπηρετεί να μιλάμε για n (n>1) συνεχόμεα πεδία μιας
εγγραφής, οπότε μιλάμε για μία ομάδα πεδίων ή για ένα σύνθετο
πεδίο.
ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ ΔΕΔΟΜΕΝΩΝ - VΙ
ΠΑΡΑΔΕΙΓΜΑ:
εγγραφές φοιτητών
Αριθμός ειδικού μητρώου
Ονοματεπώνυμο
Επώνυμο
Όνομα
Διεύθυνση
Βαθμοί
Βαθμός μαθήματος 1
Βαθμός μαθήματος 2
Βαθμός μαθήματος 3
aem
name
name_s
name_f
address
marks
v1
v2
v3
πεδίο
σύνθ. πεδίο
πεδίο
πεδίο
πεδίο
σύνθ. πεδίο
πεδίο
πεδίο
πεδίο
αλφαριθμ(4)
αλφαβ(25)
αλφαβ(25)
αλφαριθμ(30)
αριθμητ(2)
αριθμητ(2)
αριθμητ(2)
ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ ΔΕΔΟΜΕΝΩΝ - VΙΙ
recf
aem
name
name_s
name_f
marks
v1
v2
v3
ΦΥΣΙΚΕΣ-ΛΟΓΙΚΕΣ ΕΓΓΡΑΦΕΣ & ΑΡΧΕΙΑ - Ι
Φυσική εγγραφή
Καταλαμβάνει φυσικώς συνεχόμενο χώρο μνήμης και εκτός από τα
πεδία (τιμές) μπορεί να υπάρχουν πρόσθετες πληροφορίες όπως το
μήκος της εγγραφής, τύπος, δείκτες κ.λ.π.
Λογική εγγραφή
Είναι μια συλλογή από πεδία φυσικών εγγραφών για τα οποία
ενδιαφέρεται ο χρήστης της Β.Δ. πλην όμως τα πεδία αυτά δεν είναι
απαραίτητο να είναι φυσικώς συνεχόμενα. Ακόμη, μπορεί να ανήκουν
σε περισσότερα του ενός αρχεία.
Στις Β.Δ. μία λογική εγγραφή μπορεί να ταυτίζεται με μία φυσική
εγγραφή ή να είναι ένα γνήσιο υποσύνολό της ή να αποτελείται από
πεδία τα οποία ανήκουν σε διαφορετικέ φυσικές εγγραφές της βάσης.
ΦΥΣΙΚΕΣ-ΛΟΓΙΚΕΣ ΕΓΓΡΑΦΕΣ & ΑΡΧΕΙΑ - ΙΙ
Αρχεία
Είναι μια συλλογή από εγγραφές στην οποία δίνουμε ένα όνομα. Ο όρος
συνήθως χρησιμοποιείται για να δηλώσει μία φυσική οργάνωση
εγγραφών.
Ένα αρχείο μπορεί να περιέχει εγγραφές διαφορετικού τύπου. π.χ. σε
μία τράπεζα μπορεί να έχουμε εγγραφές πελατών, εγγραφές
καταθέσεων, εγγραφές μετοχών κ.λ.π.
Είναι χρήσιμο να έχουμε λογικά αρχεία τα οποία είναι ανεξάρτητα από
τα φυσικά. Ένα λογικό αρχείο αποτελείται από ορισμένες εγγραφές ενός
αρχείου π.χ. όλες οι εγγραφές των πελατών αποτελούν ένα λογικό
αρχείο
Η έννοια των λογικών αρχείων είναι πολύ χρήσιμη γιατί επιτρέπει σε
κάθε χρήστη να καθορίζει τη δικιά του συλλογή δεδομένων ανάλογα με
τις ανάγκες του και αυτό ανεξάρτητα από τη φυσική οργάνωση της Β.Δ.
ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΤΩΝ ΣΥΣΤΗΜΑΤΩΝ Β.Δ. – Ι
Κάθε χρήστης που χρησιμοποιεί δεδομένα της βάσης θα πρέπει
να καθορίζει τα δεδομένα που θα χρησιμοποιήσει στην εφαρμογή
του.
Τον καθορισμό αυτών των δεδομένων το λέμε σχήμα (schema).
Είναι λοιπόν ανάγκη να υπάρξει μια διαφοροποίηση ανάμεσα στις
περιγραφές των δεδομένων του χρήστη και των δεδομένων της
βάσης. Την περιγραφή των δεδομένων που θέλει ο χρήστης τη
λέμε εξωτερικό σχήμα, ενώ για τη βάση έχουμε το περιγραφικό
σχήμα και το εσωτερικό σχήμα.
ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΤΩΝ ΣΥΣΤΗΜΑΤΩΝ Β.Δ. – ΙΙ
Περιγραφικό σχήμα
Είναι ένα επίπεδο περιγραφής όλων των δεδομένων της βάσης που
βρίσκεται ανάμεσα στο χρήστη και στη βάση.
Περιέχει πλήρη περιγραφή των πεδίων των records, κύριων κλειδιών,
δευτερεύοντων κλειδιών, όρια τιμών κ.λ.π.
Εγγραφή νέων αρχείων, διαγραφή αρχείων, διαφοροποιήσεις στη δομή
τους κ.λ.π. Σημαίνει και αντίστοιχες μεταβολές στο περιγραφικό σχήμα.
Εξωτερικό σχήμα
Περιγράφει τα δεδομένα που ο κάθε χρήστης χρειάζεται. Σε περίπτωση
που δύο ή περισσότεροι χρήστες θέλουν τα ίδια δεδομένα, τότε
μοιράζονται το ίδιο εξωτερικό σχήμα.
ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΤΩΝ ΣΥΣΤΗΜΑΤΩΝ Β.Δ. – ΙΙΙ
Εσωτερικό σχήμα
Περιγράφει τον τρόπο εγγραφής των δεδομένων σε επίπεδο record στο
μαγνητικό μέσο (Μ. Δίσκο). Περιλαμβάνει τη μορφή των records, τους
συνδέσμους, τους αλγορίθμους αναζήτησης, πίνακες ευρετηρίων, τη μονάδα
αποθήκευσης κ.α. Το εσωτερικό σχήμα είναι η φυσική υλοποίηση του
περιγραφικού σχήματος.
Αντιστοιχίες
Η επικοινωνία μεταξύ των τριών σχημάτων γίνεται από το Σύστημα Διαχείρισης
Βάσεων Δεδομένων με ειδικό λογισμικό που υπάρχει μέα σ’ αυτό και η όλη
διαδικασία λέγεται αντιστοίχιση.
Προκειμένου ένα εξωτερικό σχήμα να λειτουργήσει θα πρέπει να έλθει σε επαφή
με το περιγραφικό σχήμα και στη συνέχεια το περιγραφικό σχήμα με το
εσωτερικό σχήμα.
Το εν λόγω λογισμικό, αναλαμβάνει να μεταφέρει τις απαιτήσεις του χρήστη στο
περιγραφικό σχήμα και βρίσκει σ΄ αυτό με ποια δεδομένα της βάσης
αντιστοιχούν οι απαιτήσεις του χρήστη. Οι απαιτήσεις αυτές στη συνέχεια
υλοποιούνται ενεργοποιώντας το εσωτερικό σχήμα.
ΕΠΙΚΟΙΝΩΝΙΑ ΜΕ ΤΗ ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ
Γενικά οι χρήστες μιας Β.Δ. είναι είτε προγραμματιστές εφαρμογών με
υψηλές γνώσεις προγραμματισμού είτε άνθρωποι με λίγες ή και
καθόλου γνώσεις προγραμματισμού.
Κάθε χρήστης επικοινωνεί με τη Β.Δ. με τη βοήθεια μιας γλώσσας. Για
τους χρήστες με λίγες ή και καθόλου γνώσεις προγραμματισμού υπάρχει
μια ειδική διαλογική γλώσσα (qery language).
Η Γλώσσα Ορισμού ή Περιγραφής Δεδομένων (Data Definition
Language) είναι ένα υποσύνολο της διαλογικής γλώσσας στο οποίο
περιγράφονται τα διαθέσιμα δεδομένα της βάσης. Η DDL
χρησιμοποιείται για τον ορισμό του εξωτικού σχήματος της βάσης.
Η Γλώσσα Χειρισμού Δεδομένων (Data Manipulation Language)
περιλαμβάνει εντολές μέσω των οποίων επιτυγχάνεται η μεταφορά
δεδομένων από και προς τη Β.Δ. Η DML χειρίζεται λογικά records.
ΤΟ ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ Ι
ΠΙΝΑΚΕΣ (ή σχέσεις)
Κάθε πίνακας έχει ένα όνομα.
Κάθε στήλη έχει ένα όνομα. Όλα τα ονόματα των στηλών πρέπει να
είναι διαφορετικά μεταξύ τους.
Η θέση κάθε γραμμής στον πίνακα δεν είναι σημαντική.
Η θέση κάθε στήλης δεν είναι σημαντική (αυτό σημαίνει ότι ο χρήστης
μπορεί να χρησιμοποιήσει οποιαδήποτε στήλη ή στήλες, αναφερόμενος
στο όνομά της ή τα ονόματά τους και όχι αναφερόμενος στη θέση της
στήλης ή των στηλών).
Κάθε διασταύρωση γραμμής και στήλης πρέπει να περιέχει μια μόνο
τιμή. Περισσότερες από μία τιμές δεν επιτρέπονται.
Κάθε γραμμή του πίνακα πρέπει να είναι διαφορετική από τις άλλες.
Αυτό σημαίνει ότι δεν επιτρέπεται να έχουμε δύο ή περισσότερες
γραμμές που να έχουν τις ίδιες τιμές σε κάθε στήλη (αν βέβαια έχει
οριστεί πρωτεύον κλειδί).
ΤΟ ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ ΙΙ
Οι τιμές του πίνακα θα πρέπει να είναι σε αρμονία με ότι έχουμε ορίσει
στα πεδία ορισμού της κάθε στήλης. Τιμές που δεν είναι σύμφωνες με
αυτά που έχουμε προκαθορίσει ή θα απορριφθούν από το DBMS ή θα
δημιουργήσουν αργότερα προβλήματα στη χρήση τους.
Μια τιμή μέσα σε έναν πίνακα μπορεί να είναι συγκεκριμένη ή όχι. Στη
δεύτερη περίπτωση λέμε ότι η τιμή είναι άγνωστη ή απροσδιόριστη τιμή
(NULL). Όταν εγγράφουμε τιμές σε έναν πίνακα και μία τιμή μας είναι
π.χ. άγνωστη, τότε στη θέση της δεν εγγράφουμε τίποτε. Οι άγνωστες
τιμές δεν πρέπει να συγχέονται με το μηδέν ή τα κενά, καθώς τα κενά
είναι μία συγκεκριμένη τιμή.
Πολλές φορές σε έναν πίνακα έχουμε μία στήλη της οποίας οι τιμές
είναι όλες διάφορες μεταξύ τους και έτσι η κάθε μία από αυτές
αντιστοιχεί ή αναγνωρίζει μία και μόνο γραμμή. Σε μία τέτοια
περίπτωση λέμε ότι το κλειδί αυτό είναι το κύριο κλειδί του πίνακα.
Στην περίπτωση που καμία στήλη δεν μπορεί να ληφθεί σαν κύριο
κλειδί, τότε μπορούμε να φτιάξουμε το κύριο κλειδί συνδυάζοντας και
τιμές άλλων στηλών.
ΔΗΜΙΟΥΡΓΙΑ ΠΙΝΑΚΩΝ Ι
Προκειμένου να δημιουργήσουμε ένα νέο πίνακα στη βάση θα πρέπει να
του δώσουμε ένα όνομα και στη συνέχεια να καθορίσουμε τη δομή του.
Η εντολή της γλώσσας SQL που χρησιμοποιούν όλα τα συστήματα
Βάσεων Δεδομένων για το σκοπό αυτό είναι η εντολή CREATE TABLE.
CREATE TABLE όνομα-πίνακα
(καθορισμός πεδίου-1
..............
καθορισμός πεδίου-n)
όπου για κάθε πεδίο έχουμε:
<όνομα πεδίου, τύπος πεδίου, [NOT NULL]>
ΔΗΜΙΟΥΡΓΙΑ ΠΙΝΑΚΩΝ ΙI
ΠΑΡΑΔΕΙΓΜΑ ΔΗΜΙΟΥΡΓΙΑΣ ΠΙΝΑΚΑ
CREATE TABLE S
(P# (CHAR(6), NONULL, PRIMARY)
EPONYMO
CHAR (30)
ONOMA CHAR (15)
POLI
CHAR (20)
TEL
CHAR (12))
P#
Π1
Π2
Π3
Π4
Π5
EPONYMO
ΓΕΩΡΓΙΟΥ
ΑΞΙΩΤΗΣ
ΒΑΣΙΛΕΙΟΥ
ΝΙΚΑΣ
ΧΑΛΚΙΑΣ
ONOMA POLI
TEL
ΓΙΑΝΝΗΣ ΑΘΗΝΑ
2105246314
ΚΩΣΤΑΣ ΘΕΣ/ΝΙΚΗ 2310456324
ΔΗΜΗΤΡΗΣ
ΛΑΜΙΑ
2421024567
ΒΑΣΙΛΗΣ ΑΘΗΝΑ
2103456789
ΓΙΩΡΓΟΣ ΔΡΑΜΑ 2521028654
ΔΗΜΙΟΥΡΓΙΑ ΠΙΝΑΚΩΝ ΙII
ΠΑΡΑΔΕΙΓΜΑ ΔΗΜΙΟΥΡΓΙΑΣ ΠΙΝΑΚΑ
CREATE TABLE P
(E# (CHAR(6), NONULL, PRIMARY)
ONOMA-E
CHAR (15)
XAR-PR
CHAR (15)
POLI
CHAR (20)
TIMH
NUMERIC (5))
αν θα θέλαμε να ορίσουμε πραγματικές τιμές, τότε το πεδίο TIMH θα
έπρεπε να δηλωθεί ως NUMERIC (8.3)
E#
Ε1
Ε2
Ε3
Ε4
Ε5
Ε6
ONOMA-E
ΖΑΧΑΡΗ
ΦΑΣΟΛΙΑ
ΚΑΦΕΣ
ΖΑΧΑΡΗ
ΑΛΑΤΙ
ΦΑΚΕΣ
XAR-PR
ΑΣΠΡΗ
ΓΙΓΑΝΤΕΣ
ΦΙΛΤΡΟΥ
ΣΚΟΥΡΗ
ΧΟΝΤΡΟ
ΧΟΝΤΡΕΣ
POLI
TIMH
ΑΘΗΝΑ
40
ΘΕΣ/ΝΙΚΗ
80
ΣΕΡΡΕΣ
500
ΑΘΗΝΑ
60
ΒΟΛΟΣ
30
ΑΘΗΝΑ
70
ΔΗΜΙΟΥΡΓΙΑ ΠΙΝΑΚΩΝ ΙV
ΠΑΡΑΔΕΙΓΜΑ ΔΗΜΙΟΥΡΓΙΑΣ ΠΙΝΑΚΑ
πίνακας που προκύπτει από τους δύο προηγούμενους
CREATE TABLE SP
(P# (CHAR(6), NONULL, PRIMARY)
E# (CHAR(6), NONULL, PRIMARY)
POSOTHTA NUMERIC(5))
P#
P1
P1
P1
P1
P1
P1
P2
P2
P3
P4
P4
P5
E# ΠΟΣΟΤΗΤΑ
E1
200
E2
200
E3
150
E4
80
E5
40
E6
100
E3
50
E6
60
E1
70
E1
80
E2
80
E3
10
ΕΙΣΑΓΩΓΗ ΔΕΔΟΜΕΝΩΝ ΣΕ ΜΙΑ Β.Δ.
ΠΑΡΑΔΕΙΓΜΑ ΕΙΣΑΓΩΓΗΣ ΤΙΜΩΝ ΣΕ ΠΙΝΑΚΑ
INSERT INTO S
VALUES (‘Π1’,’ΓΕΩΡΓΙΟΥ’,’ΓΙΑΝΝΗΣ’,’ΑΘΗΝΑ’,
‘2105246314’);
μπορούμε και να βάλουμε πολλές γραμμές με μία INSERT
ΕΠΙΛΟΓΗ RECORDS I
Για να τυπώσουμε records χρειαζόμαστε μία εντολή με την οποία είτε θα
τυπώνουμε όλα τα records είτε θα κάνουμε επιλογή αυτών που θέλουμε.
SELECT <ον. στήλης-1, ον. στήλης-2, . . ., ον. στήλης-ν ή *>
FROM <όνομα πίνακα> WHERE <συνθήκη>
εκτύπωση όλου του πίνακα
SELECT * FROM S
ή
SELECT P#, EPONYMO, ONOM, POLI, TEL FROM S
εκτύπωση στηλών
SELECT P#, POLI FROM S
ΕΠΙΛΟΓΗ RECORDS IΙ
εκτύπωση γραμμών
SELECT Ε#, POLI FROM S WHERE POLI=“ΑΘΗΝΑ”
ή
SELECT * FROM S WHERE Π#=“Π3”
Π3
ΒΑΣΙΛΕΙΟΥ
ΔΗΜΗΤΡΗΣ
ΛΑΜΙΑ 2421024567
Τελεστές =, >, <, >=, <=, <>, .AND., .OR., .NOT.
SELECT * FROM P WHERE POLI=“ΑΘΗΝΑ” .AND. TIMH>50
Π#
Ε4
E6
ΟΝΟΜΑ-Ε
ΖΑΧΑΡΗ
ΦΑΚΕΣ
XAR-PR
ΣΚΟΥΡΗ
ΧΟΝΤΡΕΣ
POLI TIMH
ΑΘΗΝΑ 60
ΑΘΗΝΑ 70