Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Βάσεις Δεδομένων.

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "Βάσεις Δεδομένων."— Μεταγράφημα παρουσίασης:

1 Βάσεις Δεδομένων

2 Βιβλιογραφία Συστήματα Βάσεων Δεδομένων, A Silberschartz, H. Korth, S. Sudarshan, Εκδόσεις Γκιούρδας, ISBN

3 Ορισμοί Βάση Δεδομένων: Μία ΟΛΟΚΛΗΡΩΜΕΝΗ συλλογή Δεδομένων που συσχετίζονται, η οποία αναπαριστά ένα υποσύνολο των στοιχείων που μπορούμε να συλλέξουμε για τον μικρόκοσμο(πεδίο αναφοράς) μιας εφαρμογής Μοντελοποιεί τα δεδομένα σε ένα οργανισμό/επιχείριση. Οντότητες (πχ. Φοιτητές, Μαθήματα) Συσχετίσεις (πχ. Ο Γιάννης παρακολουθεί το Β18) Σύστημα Διαχείρισης Βάσεων Δεδομένων: ένα πακέτο λογισμικού σχεδιασμένο να αποθηκεύει και να διαχειρίζεται Βάσεις Δεδομένων. Πρώτο ΣΔΒΔ γενικής χρήσης: αρχές 1960 Μεγάλη εμπορική επιτυχία έκτοτε.

4 Σενάριο χρήσης αρχείων

5 Αρχεία vs Βάσεις Δεδομένων
Μια βάση δεδομένων υπερέχει της χρήσης αρχείων και πινάκων παρέχει τη δυνατότητα αποθήκευσης και διαχείρισης ποικίλων ειδών δεδομένων, τη δυνατότητα χρήσης των αποθηκευμένων πληροφοριών από πολλαπλούς χρήστες τη δυνατότητα χρήσης κάποιου εξειδικευμένου τρόπου ανάπτυξης της βάση δεδομένων.

6 Αρχεία vs Βάσεις Δεδομένων
Ανεξαρτησία δεδομένων οι λεπτομέρειες οργάνωσης δεν επηρεάζουν τις εφαρμογές. Γρήγορη πρόσβαση στην πληροφορία Κατάλληλη αποθήκευση, βελτιστοποίηση Έλεγχος πρόσβασης, περιορισμοί ορθότητας Ταυτόχρονη πρόσβαση, ανάκαμψη Κάθε χρήστης νομίζει ότι είναι ο μόνος Κεντρική διαχείριση της πληροφορίας Γρηγορότερη και ασφαλέστερη ανάπτυξη εφαρμογών

7 ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ Πεδίο (field): Μια βάση δεδομένων αποτελείται από μια σειρά στοιχείων με πιο βασικό στοιχείο το πεδίο. Το πεδίο αντιστοιχεί σε ένα δεδομένο και είναι το συστατικό στοιχείο μιας εγγραφής (record). Παραδείγματα πεδίων είναι ένα όνομα πελάτη, μια διεύθυνση, μια τιμή, ένας αριθμός τηλεφώνου.

8 ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ Εγγραφή (record): Μια ενότητα από συσχετιζόμενα δεδομένα τα οποία επεξεργάζονται σαν μια ολότητα. Με άλλα λόγια εγγραφή είναι μια συλλογή από πεδία. Παράδειγμα εγγραφής: σύνολο πληροφοριών που αναφέρονται σε έναν πελάτη όπως όνομα, διεύθυνση, αριθμός φορολογικού μητρώου.

9 ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ Πίνακας (table): Μια ενότητα από συσχετιζόμενες εγγραφές οι οποίες έχουν τον ίδιο αριθμό πεδίων αποτελούν έναν πίνακα. Ο πίνακας είναι μια λογική δομή. Για παράδειγμα, ένας πίνακας πελατών θα περιλαμβάνει κάθε εγγραφή πελάτη η οποία έχει τα ίδια πεδία. Στον πίνακα οι εγγραφές αντιστοιχούν στις γραμμές (rows)και τα πεδία στις στήλες του πίνακα (columns). Οι πίνακες μπορούν να συσχετίζονται μεταξύ τους μέσω των πεδίων τα οποία περιέχουν την ίδια πληροφορία.

10 ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ Σχεσιακή Βάση Δεδομένων (relational data base): Ένα σύνολο συσχετιζόμενων πινάκων αποτελούν μία σχεσιακή βάση δεδομένων η οποία αποτελεί και τον πιο συνήθη τρόπο δημιουργίας βάσεων δεδομένων σήμερα.

11 ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ Σχεσιακή Βάση Δεδομένων (relational data base): Ένα σύνολο συσχετιζόμενων πινάκων αποτελούν μία σχεσιακή βάση δεδομένων η οποία αποτελεί και τον πιο συνήθη τρόπο δημιουργίας βάσεων δεδομένων σήμερα.

12 ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ Ευρετήρια Αναζήτησης (indexes): Η ανάκτηση των εγγραφών με βάση κάποιες συνθήκες μπορεί να πραγματοποιηθεί με τα ευρετήρια αναζήτησης. Τα ευρετήρια αυτά επιτρέπουν τη γρήγορη ανάκτηση και ταξινόμηση των εγγραφών με κάποιες συνθήκες. Χρησιμοποιούνται για πεδία τα οποία δεν είναι το πρωτεύον κλειδί ενός πίνακα και για τα οποία θα απαιτηθεί η εύρεση στοιχείων κατά τη χρήση της βάσης.

13 ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ Πρωτεύον Κλειδί (primary key): Κάθε εγγραφή σε μία σχεσιακή βάση δεδομένων πρέπει να είναι εξατομικευμένη. Αυτό επιτυγχάνεται με τον καθορισμό ενός πεδίου της εγγραφής σαν πρωτεύοντος κλειδιού. Οι εγγραφές αποθηκεύονται με βάση το πρωτεύον κλειδί. Παράδειγμα πρωτεύοντος κλειδιού για τις εγγραφές πελατών είναι ο αριθμός φορολογικού μητρώου, ή ο αριθμός τηλεφώνου κάθε πελάτη. Το πρωτεύον κλειδί είναι μοναδικός αριθμός αναγνώρισης της κάθε εγγραφής ενός πίνακα και δεν είναι δυνατή η ύπαρξη δύο εγγραφών με το ίδιο κλειδί.

14 ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ Δευτερεύον Κλειδί (foreign key): Δευτερεύοντα κλειδιά είναι κοινά πεδία μεταξύ των εγγραφών των πινάκων μιας βάσης δεδομένων τα οποία μπορούμε να χρησιμοποιήσουμε προκειμένου να κάνουμε αναζήτηση πληροφοριών στους πίνακες αυτούς. Το δευτερεύον κλειδί είναι πεδίο ενός πίνακα το οποίο προσδιορίζει εγγραφές ενός άλλου πίνακα στον παρόντα πίνακα.

15 ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ Ερωτήματα (queries): Η αναζήτηση εγγραφών σε μία βάση δεδομένων γίνεται με ερωτήματα. Για την αναζήτηση εγγραφών σε μία βάση δεδομένων χρησιμοποιείται η γλώσσα Structured Query Language (SQL).

16 ΠΑΡΑΔΕΙΓΜΑ ΒΑΣΗΣ ΔΕΔΟΜΕΝΩΝ
Ας υποθέσουμε ότι έχουμε μία βάση δεδομένων πελατών η οποία περιέχει τρεις πίνακες. Ο πρώτος πίνακας περιέχει πληροφορίες πελατών και ονομάζεται CustList. Ο δεύτερος πίνακας περιέχει πληροφορίες προϊόντων και ονομάζεται ProductsList και ο τρίτος πίνακας περιέχει πληροφορίες παραγγελιών και ονομάζεται OrdersList.

17 ΠΙΝΑΚΑΣ CustList ΠΙΝΑΚΑΣ ProductsList ΠΙΝΑΚΑΣ OrdersList

18 ΠΑΡΑΔΕΙΓΜΑ ΒΑΣΗΣ ΔΕΔΟΜΕΝΩΝ
Ο πίνακας CustList περιέχει εγγραφές με πληροφορίες πελατών μιας επιχείρησης, όπως: αριθμό πελάτη, όνομα πελάτη, τηλέφωνο, διεύθυνση, πόλη και ΑΦΜ. Η κάθε εγγραφή του πίνακα περιέχει τα πεδία: Customer_No, Customer_Name, Phone_Number, Address, City και AFM.

19 ΠΑΝΑΚΑΣ CustList πεδία

20 ΠΑΡΑΔΕΙΓΜΑ ΒΑΣΗΣ ΔΕΔΟΜΕΝΩΝ
Ο δεύτερος πίνακας , ο πίνακας ProductsList, περιέχει τα πεδία: Product_No, Product_Name, Price και Quantity_Stock.

21 ΠΑΡΑΔΕΙΓΜΑ ΒΑΣΗΣ ΔΕΔΟΜΕΝΩΝ
Ο τρίτος πίνακας , ο πίνακας OrdersList, περιέχει τα πεδία: Order_No, Product_No, Customer_No, Date_Required και Quantity_Ordered.

22 ΠΙΝΑΚΕΣ ΠΕΔΙΑ

23 ΠΑΡΑΔΕΙΓΜΑ ΒΑΣΗΣ ΔΕΔΟΜΕΝΩΝ
Το πεδίο Customer_No είναι το πρωτεύον κλειδί για τον πίνακα CustList, διότι κάθε εγγραφή πελάτη εξατομικεύεται από τον αριθμό του πελάτη. Επίσης το πεδίο Product_No είναι το πρωτεύον κλειδί για τον πίνακα ProductsList για τον ίδιο λόγο.

24 ΠΑΡΑΔΕΙΓΜΑ ΒΑΣΗΣ ΔΕΔΟΜΕΝΩΝ
Στον πίνακα OrdersList τα πεδία Customer_No και Product_No είναι το δευτερεύον κλειδί διότι προσδιορίζουν εγγραφές άλλων πινάκων στον πίνακα αυτόν.

25 πρωτεύοντα κλειδιά δευτερεύοντα κλειδιά

26 ΣΧΕΣΕΙΣ ΣΕ ΜΙΑ ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ
Εκτός από τον καθορισμό των πινάκων, των εγγραφών, των πεδίων, του πρωτεύοντος και του δευτερεύοντος κλειδιού και των ευρετηρίων, για τη δημιουργία μιας σχεσιακής βάσης δεδομένων μπορούμε επίσης να καθορίσουμε τις σχέσεις (relationships) μεταξύ των πινάκων. Οι σχέσεις αυτές περιλαμβάνουν τις δομές: ένα προς ένα (one-to-one), ένα προς πολλά (one-to-many) και πολλά προς πολλά (many-to-many)

27 ΣΧΕΣΕΙΣ ΣΕ ΜΙΑ ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ
Ένα παράδειγμα σχέσεως «ένα προς πολλά» είναι η σχέση μεταξύ πελάτη και παραγγελιών. Για κάθε πελάτη αντιστοιχούν περισσότερες από μία παραγγελίες. Επίσης κάθε προϊόν αντιστοιχεί σε περισσότερες από μία παραγγελίες.

28 ΔΗΜΙΟΥΡΓΙΑ ΒΑΣΗΣ ΔΕΔΟΜΕΝΩΝ

29 ΔΗΜΙΟΥΡΓΙΑ ΒΑΣΗΣ ΔΕΔΟΜΕΝΩΝ
Μία βάση δεδομένων συνήθως είναι ήδη δημιουργημένη με κάποιο εργαλείο δημιουργίας βάσεων δεδομένων. Εργαλεία δημιουργίας βάσεων δεδομένων οι οποίες μπορούν να διαβαστούν από τη Visual Basic είναι τα ακόλουθα: MySQL, Microsoft Access, dBase, Excel, FoxPro, Paradox, καθώς και ο SQL Server.

30 ΔΗΜΙΟΥΡΓΙΑ ΒΑΣΗΣ ΔΕΔΟΜΕΝΩΝ
Τα εργαλεία δημιουργίας βάσεων δεδομένων διαθέτουν ιδιότητες και μεθόδους οι οποίες επιτρέπουν: την εισαγωγή, την πρόσθεση, την διόρθωση, την διαγραφή και τον εντοπισμό των εγγραφών-δεδομένων της.

31 SQL (Structured Query Language)

32 ΕΙΣΑΓΩΓΗ SQL (Structured Query Language) είναι η τυποποιηµένη “standard” γλώσσα στις Σχεσιακές Βάσεις. Η γλώσσα αυτή χρησιμοποιείται για τη δημιουργία πινάκων, τον προσδιορισμό σχέσεων μεταξύ πινάκων, καθώς επίσης και για τη διαχείριση δεδομένων σε πίνακες.

33 4 βασικές εντολές της SQL:
Ανάκτηση SELECT * FROM Departments WHERE budget > Εισαγωγή INSERT INTO Employees(ssn,name) VALUES (83542, ‘Aris’) Ενημερώση UPDATE Departments SET budget = WHERE did = 12345 Διαγραφή DELETE FROM Employees WHERE name = “Aris” Το αποτέλεσµα µιας εντολής / πράξης σε Σχέσεις είναι (πάντα) µια νέα Σχέση

34 ΑΝΕΥΡΕΣΗ ΜΕ ΧΡΗΣΗ ΤΗΣ SQL
Τα ερωτήματα αρχίζουν με την εντολή SELECT, η οποία επιτρέπει την επιλογή εγγραφών από μία βάση δεδομένων που εκπληρώνουν κάποιο κριτήριο. Ο γενικός τύπος ενός ερωτήματος SQL είναι: SELECT πεδία εγγραφών FROM όνομα πίνακα WHERE κριτήρια

35 ΑΝΕΥΡΕΣΗ ΜΕ ΧΡΗΣΗ ΤΗΣ SQL
Για παράδειγμα: SELECT Customer_Name FROM CustList WHERE Customer_No > 100 H χρήση της SQL για δημιουργία ερωτημάτων είναι ιδιαίτερα χρήσιμη μέθοδος για την αναζήτηση εγγραφών σε πολλούς πίνακες.

36 ΕΦΑΡΜΟΓΕΣ (DBMS) Τραπεζικοί λογαριασμοί
Εταιρικά συστήματα διαχείρισης προσωπικού και εμπορευμάτων Συστήματα κρατήσεων σε αεροπορικές πτήσεις και σιδηροδρομικά ταξίδια Συστήματα δανεισμού βιβλίων σε Πανεπιστήμια και Ερευνητικά Ινστιτούτα

37

38 ΜΟΝΤΕΛΑ ΕΝΟΣ ΣΔΒΔ

39 Περιγραφή των Δεδομένων:
ΤΑ ΜΟΝΤΕΛΑ ΕΝΟΣ ΣΔΒΔ Περιγραφή των Δεδομένων: Ένα μοντέλο δεδομένων είναι συλλογή από έννοιες που χρησιμοποιούνται για την περιγραφή δεδομένων του πραγματικού κόσμου

40 ΤΥΠΟΙ ΜΟΝΤΕΛΩΝ Υπάρχουν 3 τύποι μοντέλων: Το Ιεραρχικό μοντέλο Το Δικτυακό μοντέλο και Το Σχεσιακό μοντέλο

41 Σχεσιακό μοντέλο Το σχεσιακό μοντέλο δεδομένων είναι το μοντέλο που χρησιμοποιείτε περισσότερο σήμερα. Χρησιμοποιεί ένα σύνολο από πίνακες που αντιπροσωπεύουν: δεδομένα σχέσεις μεταξύ αυτών των δεδομένων

42 Σχεσιακό μοντέλο

43 ER Μοντέλο Οντότητας - Σχέσης (Entity Relationship)

44 ER Οντότητα: αντικείμενο πραγματικού κόσμου
Περιγράφεται σαν ένα σύνολο γνωρισμάτων Παρόμοιες οντότητες (ίδια γνωρίσματα): σύνολο οντότητας Κάθε γνώρισμα έχει ένα πεδίο τιμών Κάθε συνολο οντότητας μπορεί να έχει ένα κλειδί Συσχέτιση: μια σχέση μεταξύ οντοτήτων Πχ. Ο Κώστας δουλεύει στο τμήμα πωλήσεων Μια συσχέτιση μπορεί επίσης να έχει γνωρίσματα Σύνολο συσχετίσεων: συλλογή παρόμοιων συσχετίσεων

45 Διάγραμμα οντοτήτων – συσχετίσεων (ER Diagram)
Δημιουργείται από τα παρακάτω συστατικά Ορθογώνια, που αντιπροσωπεύουν σύνολα οντοτήτων Ρόμβους, που αντιπροσωπεύουν σχέσεις μεταξύ συνόλων οντοτήτων Ελλείψεις, που αντιπροσωπεύουν ιδιότητες Γραμμές, που συνδέουν ιδιότητες με σύνολα οντοτήτων και σύνολα οντοτήτων με σχέσεις.

46 Διάγραμμα ER ιδιότητες

47 Διαγράμματα Οντοτήτων Συσχετίσεων (ER)

48 ΤΕΛΟΣ


Κατέβασμα ppt "Βάσεις Δεδομένων."

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google