ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ. PhytoKaryon: Μία κυτταρολογική βάση δεδομένων των φυτών της Ευρώπης και της Μεσογείου Αξιοποίηση και παρουσίαση δεδομένων.



Σχετικά έγγραφα
Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας. 2 ο Μάθημα: Βασικά Θέματα Βάσεων Δεδομένων. Δρ. Κωνσταντίνος Χ.

ΔΕΔΟΜΕΝΑ ΚΑΙ ΠΛΗΡΟΦΟΡΙΕΣ

ΕΥΡΕΣΗ ΠΡΟΫΠΗΡΕΣΙΑΣ ΩΡΟΜΗΣΘΙΩΝ ΚΑΘΗΓΗΤΩΝ, ΜΕ ΤΗΝ ΧΡΗΣΗ ΒΑΣΗΣ ΔΕΔΟΜΕΝΩΝ

Η Θεωρία των Βάσεων Δεδομένων

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

Βάσεις Δεδομένων. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα

ΕΦΑΡΜΟΓΕΣ Η/Υ ΣΤΗ ΔΑΣΟΠΟΝΙΑ

A ΕΠΑ.Λ ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 5 η ΕΝΟΤΗΤΑ: ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Εκπαιδευτικοί: ΓΑΛΑΝΟΣ ΓΕΩΡΓΙΟΣ ΜΠΟΥΣΟΥΝΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ

Διαχείριση Πολιτισμικών Δεδομένων

ΚΕΦΑΛΑΙΟ 1: Τα είδη των Δικτύων Εισαγωγή

ΜΕΛΕΤΗ ΚΑΙ ΚΑΤΑΣΚΕΥΗ ΠΛΗΡΟΦΟΡΙΑΚΟΥ ΣΥΣΤΗΜΑΤΟΣ ΔΙΑΧΕΙΡΙΣΗΣ ΠΕΛΑΤΟΛΟΓΙΟΥ ΙΔΙΩΤΙΚΟΥ ΤΗΛΕΟΠΤΙΚΟΥ ΔΙΑΥΛΟΥ

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ - ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΣΒΔ - ΕΙΣΑΓΩΓΗ ΣΤΟ ΜΟΝΤΕΛΟ ΟΝΤΟΤΗΤΩΝ ΣΥΣΧΕΤΙΣΕΩΝ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ

Κεφάλαιο 4 Σχεδίαση Βάσεων Δεδομένων

ΕΠΛ 001: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Δίκτυα Υπολογιστών

ΚΕΦΑΛΑΙΟ 1.7. Πρωτόκολλα και Αρχιτεκτονική Δικτύου

Πληροφορική 2. Βάσεις Δεδομένων (Databases)

Τμήμα του εθνικού οδικού δικτύου (Αττική οδός)

Στόχοι. Υπολογιστικά συστήματα: Στρώματα. Βασικές έννοιες [7]

Βάσεις Δεδομένων. Εισαγωγή Ανάλυση Απαιτήσεων. Φροντιστήριο 1 ο

4.2. Η PHP και η MySQL...55

ÈÛ ÁˆÁ ÛÙÈ μ ÛÂÈ Â ÔÌ ÓˆÓ

Αρχιτεκτονική Συστημάτων Βάσεων Δεδομένων. Κατηγορίες χρηστών ΣΔΒΔ Αρχιτεκτονική ANSI/SPARC Γλώσσες ερωτημάτων Μοντέλα δεδομένων Λειτουργίες ΣΔΒΔ

Εισαγωγή στις βάσεις δεδομένων - Η ανατομία μιας βάσης δεδομένων

Εργαστηριακές Ασκήσεις Σελίδα 1

Information Technology for Business

Δικτύωση υπολογιστών

Εισαγωγή στην Πληροφορική

Βάσεις δεδομένων και Microsoft Access

ΠΕΛΑΤΗΣ ΠΑΡΑΓΓΕΛΙΑ ΠΡΟΪΟΝ

Κάντε κλικ για έναρξη

Κεφάλαιο 2. Υπολογιστές και Τεχνολογία Επικοινωνιών Παρελθόν - Παρόν - Μέλλον

Επαναληπτικές Ασκήσεις Μαθήματος

Εισαγωγικό Μάθημα Βασικές Έννοιες - Ανάλυση Απαιτήσεων

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ασκήσεις και ερωτήσεις

PROJECT ΕΡΓΑΣΤΗΡΙΩΝ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ Ι. Τμήμα Μηχανικών Πληροφορικής Τ.Ε.

Εισαγωγή στην πληροφορική

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων

Βάσεις Δεδομένων Εισαγωγή

µπιτ Λύση: Κάθε οµάδα των τεσσάρων µπιτ µεταφράζεται σε ένα δεκαεξαδικό ψηφίο 1100 C 1110 E Άρα το δεκαεξαδικό ισοδύναµο είναι CE2

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων

ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. Συστήματα Διαχείρισης Βάσεων Δεδομένων

Α5.1 Εισαγωγή στα Δίκτυα. Α Λυκείου

ΜοντέλοΟντοτήτωνΣυσχετίσεων & ΔιάγραμμαΟντοτήτων Συσχετίσεων. Μοντέλο Οντοτήτων Συσχετίσεων

ΜΑΘΗΜΑ 4 - ΕΡΩΤΗΣΕΙΣ ΠΟΛΛΑΠΛΗΣ ΕΠΙΛΟΓΗΣ

Εισαγωγή στην επιστήμη των υπολογιστών. Υλικό Υπολογιστών Κεφάλαιο 6ο ίκτυα υπολογιστών

. Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Μάθημα Βασικές Έννοιες - Ανάλυση Απαιτήσεων

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων

Εισαγωγή στην Πληροφορική

Βάσεις εδομένων ΘΕΜΑ ΕΡΓΑΣΙΑΣ. Μέρμηγκας Αλέξανδρος Α.Μ ιαχείρηση Πληροφοριακών Συστηματών

ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΑ ΕΡΓΑΛΕΙΑ ΓΙΑ ΤΟ ΔΙΑΔΙΚΤΥΟ

Μοντέλο Οντοτήτων-Συσχετίσεων

ΕΥΑΓΓΕΛΟΣ Χ. ΖΙΟΥΛΑΣ

Πληροφοριακού Συστήματος Ενημέρωσης Καιρικών Συνθηκών

ΣΕΜΙΝΑΡΙΟ ΔΙΚΤΥΩΝ ΜΑΡΤΙΟΣ ΜΑΙΟΣ 2010 ΔΙΟΡΓΑΝΩΣΗ ΑΜΠΑΡΙΩΤΗΣ ΑΠΟΣΤΟΛΟΣ ΓΙΑΜΜΑΚΗΣ ΓΙΑΝΝΗΣ ΛΕΒΑΝΤΗΣ ΟΔΥΣΣΕΑΣ ΠΑΠΑΔΟΠΟΥΛΟΣ ΜΑΡΙΟΣ ΨΙΑΧΟΣ ΧΡΗΣΤΟΣ

Κεφάλαιο 12. Επικοινωνίες-Δίκτυα-Διαδίκτυο. Εξαιρούνται οι παράγραφοι:

Η SQL αποτελείται από δύο υποσύνολα, τη DDL και τη DML.

Ενότητα 3: Διαχείριση πληροφοριακών πόρων με τη χρήση βάσεων δεδομένων

ΓΕΩΠΟΝΙΚΗ ΣΧΟΛΗ ΑΠΘ Εργαστήριο Πληροφορικής στη Γεωργία

1

Σχεδίαση Βάσεων Δεδομένων

ΤΕΧΝΟΛΟΓΙΑ ΔΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ 1 ο ΚΕΦΑΛΑΙΟ

Σχεδιασμός Βάσεων Δεδομένων

ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΑ ΣΥΣΤΗΜΑΤΑ

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. 1 ο ΣΧΟΛΕΙΟ ΚΩΔΙΚΑ «Βασικά Θέματα Προγραμματισμού στην Ανάπτυξη Δυναμικών Διαδικτυακών Εφαρμογών» (Part 3) Ουρανία Σμυρνάκη

Βασικές Έννοιες Web Εφαρμογών

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

ίκτυα υπολογιστών Στόχοι κεφαλαίου ίκτυα

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Επιβλέπων: ΠΟΤΗΡΑΚΗΣ ΑΝΤΩΝΙΟΣ

Διαχείριση Δεδομένων

Περιεχόμενα. Κεφάλαιο 1 Εισαγωγή στην Access Κεφάλαιο 2 Χειρισμός πινάκων... 27

Εισαγωγή στο διαδίκτυο

Σχεδίαση και Ανάπτυξη Ιστότοπων

Εισαγωγή στα Συστήματα Βάσεων Δεδομένων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

ίκτυα - Internet Υπηρεσίες Internet O Παγκόσµιος Ιστός (World Wide Web) Ηλεκτρονική Αλληλογραφία ( ) Υπηρεσία FTP (File Transfer Protocol)

Database System Concepts and Architecture (Αρχιτεκτονική, οµές, και Μοντέλα)

Πληροφορική ΙΙ Εισαγωγή στις Βάσεις Δεδομένων. Τμήμα Λογιστικής

Κεφάλαιο 5. Δημιουργία φορμών για τη βάση δεδομένων DVDclub

Λίγα λόγια από το συγγραφέα Βάσεις δεδομένων και Microsoft Access Microsoft Access... 22

Εισαγωγή στις Βάσεις Δεδομένων (ΒΔ)

Εφαρμογές Πληροφορικής

Πρόγραμμα Πιστοποίησης Γνώσεων και Δεξιοτήτων H/Y ΕΝΟΤΗΤΑ 1: «ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ»

ΕΞΕΤΑΣΤΕΑ ΥΛΗ (SYLLABUS) ADVANCED σχεδιασμός ιστοσελίδας ΕΚΔΟΣΗ 1.0. Σόλωνος 108,Τηλ Φαξ

ΤΕΙ ΚΑΒΑΛΑΣ. Πτυχιακή εργασία ΕΙΣΑΓΩΓΗ. Μιλτιάδης Κακλαμάνης

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

ΗΛΕΚΤΡΟΝΙΚΟ ΚΑΤΑΣΤΗΜΑ

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΜΕ ΘΕΜΑ:

Στόχοι και αντικείμενο ενότητας

Ως Διαδίκτυο (Internet) ορίζεται το παγκόσμιο (διεθνές) δίκτυο ηλεκτρονικών υπολογιστών (international network).

Πεδία (Attributes) Συσχετίσεις (Relationships) Κλειδιά (Identifiers) Οντότητες είναι υποψήφια αρχεία

ΠΕΡΙΕΧΟΜΕΝΑ. ΠΡΟΛΟΓΟΣ... iii 1 ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ Η αρχιτεκτονική von Neumann Περιφερειακές συσκευές...

Προγραμματισμός Ηλεκτρονικών Υπολογιστών 1

ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΔΙΟΙΚΗΣΗΣ

Πρότυπο Αναφοράς Open Systems Interconnection (OSI) Επικοινωνίες Δεδομένων Μάθημα 5 ο

Πρωτόκολλα Επικοινωνίας και Τείχος Προστασίας

ίκτυα ίκτυο υπολογιστών: Ένα σύνολο από υπολογιστικές συσκευές που συνδέονται µεταξύ τους για σκοπούς επικοινωνίας και χρήσης πόρων. Συνήθως, οι συσκε

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών

Κεφάλαιο 1 Ε Π Α Ν Α Λ Η Ψ Η

Εργαλεία ανάπτυξης εφαρμογών internet Ι

ΤΙΤΛΟΣ ΕΡΓΑΣΙΑΣ. Πετρογεωργάκης Μανούσος Σπυρόπουλος Σταύρος

Transcript:

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΦΥΣΙΚΗΣ ΜΕΤΑΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΗΛΕΚΤΡΟΝΙΚΗ ΚΑΙ ΕΠΕΞΕΡΓΑΣΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ PhytoKaryon: Μία κυτταρολογική βάση δεδομένων των φυτών της Ευρώπης και της Μεσογείου Αξιοποίηση και παρουσίαση δεδομένων. I Μεταπτυχιακός Φοιτητής: Πέτρος Σταυρόπουλος Α.Μ.: 78 Επιβλέπουσα Καθηγήτρια: Γ. Καμάρη ΠΑΤΡΑ ΟΚΤΩΒΡΙΟΣ 2009

1. ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΔΙΑΔΙΚΤΥΟΥ...6 1.1. Γενικά για τα δίκτυα δικτύων υπολογιστών... 6 1.2. Δίκτυα επικοινωνιών... 8 1.3. Κατηγορίες δικτύων επικοινωνιών... 11 1.4. Τοπικά Δίκτυα επικοινωνιών... 11 1.5. Μητροπολιτικά Δίκτυα επικοινωνιών... 12 1.6. Δίκτυα Ευρείας Περιοχής (WAN)... 13 1.7. Παγκόσμιος Ιστός... 14 1.8. Περιήγηση στον Παγκόσμιο Ιστό... 15 1.9. Σύνοψη... 16 2. ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ...17 2.1. Τα Δεδομένα και οι Πληροφορίες... 17 2.2. Η Οργάνωση Αρχείων... 18 2.3. Προβλήματα της Οργάνωσης Αρχείων... 21 2.4. Οι Βάσεις Δεδομένων και τα ΣΔΒΔ (DBMS)... 22 2.5. Η Αρχιτεκτονική των ΣΔΒΔ... 24 2.6. Οι Οντότητες (Entities)... 25 2.7. Οι Ιδιότητες (Attributes)... 26 2.8. Τα Στιγμιότυπα (Snapshots)... 27 2.9. Το Πρωτεύον Κλειδί (Primary Key)... 27 2.10. Οι Συσχετίσεις (Relationships)... 27 2.11. Το Ιεραρχικό Μοντέλο Βάσεων Δεδομένων... 28 2.12. Το Δικτυωτό Μοντέλο Βάσεων Δεδομένων... 28 2.13. Το Σχεσιακό Μοντέλο Βάσεων Δεδομένων... 29 2.14. Τα Σχεσιακά ΣΔΒΔ (RDBMS)... 31 2.15. Το Μοντέλο Οντοτήτων Συσχετίσεων... 32 2.16. Οι Οντότητες... 32 2.17. Οι Ιδιότητες (Χαρακτηριστικά) των Οντοτήτων... 33 2.18. Τα Κλειδιά... 34 2.19. Οι Συσχετίσεις Μεταξύ Οντοτήτων... 35 2.20. Οι Διμελείς Συσχετίσεις... 36 2.21. Το Διάγραμμα Οντοτήτων Συσχετίσεων... 37 2.22. Λογικός Σχεδιασμός μιας Βάσης Δεδομένων... 38 2.23. Η Κανονικοποίηση... 39 2.24. Πλεονασμός Δεδομένων και Ανωμαλίες Ενημέρωσης... 40 2.25. Η Διαδικασία της Κανονικοποίησης... 41 2.26. Σύνοψη... 41 3. ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΓΛΩΣΣΑΣ HTML...43 3.1. Οδηγία (Tag)... 43 3.2. Πώς κατασκευάζεται μια απλή Web σελίδα... 44 3.3. Επικεφαλίδες... 45 3.4. Διαχωριστικά... 46 3.5. Ετικέτες στυλ... 47 3.6. Λίστες... 48 3.7. Εικόνες... 50 3.8. Στοίχιση κειμένου... 51 3.9. Πίνακες... 52 2

3.10. Σύνοψη... 54 4. ΔΗΜΙΟΥΡΓΙΑ DATABASE-DRIVEN WEB SITE ΜΕ ΧΡΗΣΗ PHP ΚΑΙ MYSQL...55 4.1. Η Ανάγκη για ένα Database-Driven Web Site... 55 4.2. Η PHP και η MySQL... 56 4.3. Αν ο Web Host Παρέχει την PHP και την MySQL... 57 4.4. Σύνοψη... 58 5. ΘΕΜΕΛΙΩΔΗΣ ΟΡΟΛΟΓΙΑ ΤΗΣ ΣΥΣΤΗΜΑΤΙΚΗΣ ΒΟΤΑΝΙΚΗΣ...59 5.1. Συστήματα κατάταξης ή ταξινομικά συστήματα... 61 5.2. Ταξινομικές βαθμίδες. Η έννοια του είδους.... 63 5.3. Ονοματολογία... 66 5.4. Συνήθεις συντομογραφίες της Συστηματικής Βοτανικής.... 70 5.5. Σύνδεση των στοιχείων με την Βάση Δεδομένων PhytoKaryon... 70 5.5.1. Οικογένειες (Families)...70 5.5.2. Γένη (Genus)...71 5.5.3. Είδος (Species)...71 5.6. Σύνοψη... 72 6. ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ PHYTOKARYON...73 6.1. Περιγραφή των στοιχείων της Βάσης Δεδομένων PhytoKaryon... 73 6.2. Η Microsoft Access εργαλείο σχεδιασμού της Βάσης Δεδομένων PhytoKaryon... 75 6.3. Περιγραφή της Βάσης Δεδομένων PhytoKaryon... 77 6.4. Διάγραμμα Μοντέλου Οντοτήτων Συσχετίσεων της PhytoKaryon 83 6.5. Σύνοψη... 84 7. ΜΕΘΟΔΟΛΟΓΙΑ...85 7.1. Microsoft Access... 85 7.2. Access to MySQL Converter... 86 7.3. WampServer... 88 7.4. Apache Server... 90 7.5. MySQL... 91 7.6. PHP... 92 7.6.1. Βασική Σύνταξη και Εντολές της PHP...94 7.6.2. Μεταβλητές και Τελεστές...95 7.6.3. Η Αλληλεπίδραση με τον Χρήστη και οι Φόρμες...97 7.6.4. Σελίδες Πολλαπλού Σκοπού (Multi-Purpose Pages)...101 7.6.5. Δημοσίευση Δεδομένων της MySQL στο Web...105 7.6.6. Δημιουργία Σύνδεσης της MySQL με την PHP...106 7.6.7. Εκτέλεση SQL Ερωτημάτων (Queries) με την PHP...109 7.7. Χειρισμός των Αποτελεσμάτων της Εντολής SELECT... 110 7.8. Η PHP στην PhytoKaryon... 111 7.8.1. Βασικές Λειτουργικές έννοιες...111 7.8.2. Μενού...115 7.8.3. Επάνω Τμήμα Ιστοσελίδων...116 3

7.8.4. Δεξιό τμήμα ιστοσελίδων...118 7.8.5. Επίπεδα Χρηστών...120 7.8.6. Οικογένειες Και Γένη δειγμάτων...125 7.8.7. Είδη Δειγμάτων...130 7.8.8. Εισαγωγή νέας εγγραφής...132 7.8.9. Σύνοψη...133 8. AΞΙΟΠΟΙΗΣΗ ΤΗΣ ΒΑΣΗΣ ΔΕΔΟΜΕΝΩΝ PHYTOKARYON ΑΠΌ ΤΗΝ ΠΛΕYΡΑ ΤΟΥ ΔΙΑΧΕΙΡΙΣΤH...134 8.1. Αρχική Σελίδα Ιστοσελίδας... 134 8.2. Μενού Επιλογών... 136 8.3. Διαδικασίες Διαχείρισης χρηστών... 136 8.4. Δυνατότητα επεξεργασίας της βάσης δεδομένων... 140 8.5. Συμπεράσματα... 149 9. ΠΑΡΑΡΤΗΜΑ...150 9.1. Τι Είναι η SQL... 150 9.2. Οι Πίνακες Βάσεων Δεδομένων (Database Tables)... 150 9.3. Τα Ερωτήματα της SQL (SQL Queries)... 151 9.4. Χειρισμός Δεδομένων της SQL (Data Manipulation)... 152 9.5. Ορισμός Δεδομένων της SQL (Data Definition)... 152 9.6. Η SQL και οι Ενεργές Σελίδες Διακομιστή... 152 9.7. Η Εντολή Select της SQL... 153 9.8. Το Where Clause της SQL... 154 9.9. Η Συνθήκη LIKE... 155 9.10. Οι Λογικοί Τελεστές And και Or... 156 9.11. Ο Τελεστής Between... And... 158 9.12. Η Λέξη Κλειδί Distinct... 160 9.13. Η Λέξη Κλειδί Order By... 161 9.14. Ασκηση σε SQL... 163 9.15. Η Εντολή INSERT INTO... 164 9.16. Η Εντολή Update... 166 9.17. Η Εντολή Delete... 167 9.18. Οι Συναρτήσεις Count της SQL... 168 9.19. Οι Λέξεις Κλειδιά COUNT και DISTINCT... 169 9.20. Οι Συναρτήσεις της SQL... 170 9.21. Η Λέξη Κλειδί Group By... 173 9.22. Η Λέξη Κλειδί HAVING... 174 9.23. Τα Ψευδώνυμα (Aliases)... 175 9.24. Ενωση Πινάκων (Join)... 177 9.25. Δημιουργία Βάσης Δεδομένων και Πίνακα... 179 9.26. Διαγραφή Βάσης Δεδομένων και Πίνακα... 181 9.27. Η Εντολή Alter Table... 181 10. ΒΙΒΛΙΟΓΡΑΦΙΑ...184 4

ΠΡΟΛΟΓΟΣ Η παρούσα Πτυχιακή Εργασία εκπονήθηκε στα πλαίσια του Διατμηματικού Μεταπτυχιακού Προγράμματος Σπουδών «Ηλεκτρονική και Επεξεργασία της Πληροφορίας» των Τμημάτων Φυσικής, Μηχανικών Η/Υ και Πληροφορικής, Βιολογίας και Ιατρικής του Πανεπιστημίου Πατρών. Σε αυτό το σημείο θα θέλαμε να εκφράσουμε τις θερμές ευχαριστίες μας στην υπεύθυνη καθηγήτρια Καμάρη Γεωργία για το αξιόλογο θέμα που μας εμπιστεύτηκε. Επίσης ευχαριστούμε πολύ τους διδάκτορες Μπαρέκα Πέπη και Γεώργιο Μήτσαινα για την αμέριστη συμπαράσταση, την προσφορά πολύτιμων γνώσεων και την καθοδήγηση τους καθ όλη τη διάρκεια αυτής της εργασίας. Τέλος θα ήθελα να ευχαριστήσω την Λέττα και την Αριάδνη για την αμέριστη συμπαράσταση και υπομονή τους, καθώς και τον Θεόδωρο Βασιλείου για την ανοχή του. Πέτρος Σταυρόπουλος Πάτρα, Οκτώβριος 2009 5

1. ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΔΙΑΔΙΚΤΥΟΥ Στόχος της ενότητας αυτής είναι η εισαγωγή στις βασικές έννοιες σε ότι αφορά το διαδίκτυο. Ενδείκνυται για μία πρώτη επαφή του αναγνώστη με το τομέα της επιστήμης που ασχολείται με τις βασικές έννοιες του διαδικτύου. Οι παράγραφοι που ακολουθούν εξηγούν ποια είναι τα θέματα και πως οδήγησαν στην ανάπτυξη της δικτύου Δικτύων και πως φτάσαμε στην έννοια του Internet. 1.1. Γενικά για τα δίκτυα δικτύων υπολογιστών Σε κάθε ένα από τους τρεις τελευταίους αιώνες επικράτησε μία μοναδική τεχνολογία. Ο 18 ος αιώνας ήταν η εποχή των μεγάλων μηχανικών συστημάτων που συνόδευσαν τη βιομηχανική επανάσταση. Ο 19ος αιώνας ήταν η εποχή της ατμομηχανής. Στον 20ο αιώνα η τεχνολογία-κλειδί είναι η συλλογή, επεξεργασία και διανομή της πληροφορίας. Έχουμε δει την εγκατάσταση τηλεφωνικών δικτύων σε όλη την υδρόγειο, την εφεύρεση του ραδιοφώνου και της τηλεόρασης, τη γέννηση και χωρίς προηγούμενο ανάπτυξη της βιομηχανίας υπολογιστών και την εκτόξευση επικοινωνιακών δορυφόρων. Αν και η βιομηχανία των υπολογιστών είναι νέα σε σύγκριση με άλλες βιομηχανίες (αυτοκινητοβιομηχανία, αερομεταφορές) οι υπολογιστές έχουν εξελιχθεί θεαματικά σε σύντομο διάστημα. Κατά την διάρκεια των πρώτων δεκαετιών της ύπαρξής τους, τα υπολογιστικά συστήματα ήταν συγκεντρωμένα σε μια μεγάλη αίθουσα. Η ιδέα ότι μέσα σε 20 χρόνια θα παράγονταν μαζικά σε εκατομμύρια εξίσου ισχυροί υπολογιστές (μικρότεροι και από γραμματόσημο) ήταν καθαρά επιστημονική φαντασία. Εξαιτίας της ραγδαίας τεχνολογικής προόδου οι περιοχές της συλλογής, μεταφοράς, αποθήκευσης και επεξεργασίας της πληροφορίας συγκλίνουν ταχύτατα και οι διαφορές τους εξαφανίζονται. Καθώς αναπτύσσεται η ικανότητά μας να συλλέγουμε, να επεξεργαζόμαστε και να διανέμουμε πληροφορίες η ανάγκη για περισσότερη προηγμένη επεξεργασία της πληροφορίας αναπτύσσεται ακόμα ταχύτερα. 6

Η σύγκλιση των δυο ανεξάρτητων-πριν από λίγα χρόνια- τεχνολογιών της πληροφορικής (των υπολογιστών) και των τηλεπικοινωνιών είχε σημαντική επίδραση στον τρόπο με τον οποίο οργανώνονται τα υπολογιστικά συστήματα. Η ιδέα του υπολογιστικού κέντρου με ένα μεγάλο υπολογιστή, όπου οι χρήστες φέρνουν την δουλειά τους για επεξεργασία είναι πλέον ξεπερασμένη. Σήμερα ένας μεγάλος αριθμός ξεχωριστών αλλά διασυνδεδεμένων υπολογιστών κάνουν την δουλειά. Τα συστήματα αυτά αποκαλούνται δίκτυα υπολογιστών. Οι αλλαγές που λαμβάνουν χώρα έχουν δραματική επίδραση στον τρόπο με τον οποίο επικοινωνούν άτομα και οργανισμοί. Η διοίκηση σε όλα τα επίπεδα, το εμπόριο και η οικονομία, η φροντίδα της υγείας, η εκπαίδευση, είναι μεταξύ των πεδίων της ανθρώπινης δραστηριότητας που επηρεάζονται βαθιά από τις τεχνολογικές προόδους που συντελούνται σήμερα. Η ανάγκη για ανάπτυξη των δικτύων υπολογιστών δημιουργείται για καθένα από τους παρακάτω λόγους: τη διαθεσιμότητα όλων των προγραμμάτων, του εξοπλισμού (π.χ. εκτυπωτές, δίσκοι αποθήκευσης) και προπάντων των δεδομένων, σε οποιονδήποτε στο δίκτυο, ανεξάρτητα από τη φυσική θέση του πόρου (resource) και του χρήστη την παροχή υψηλής αξιοπιστίας (high reliability) των μηχανημάτων και των ζεύξεών τους τη γρήγορη διανομή δεδομένων την εξοικονόμηση χρημάτων. Οι μικροί υπολογιστές έχουν έναν πολύ καλύτερο λόγο κόστους προς απόδοση από τους μεγαλύτερους. Οι μεγάλοι υπολογιστές (main frames) είναι σχεδόν δέκα φορές ταχύτεροι από τους προσωπικούς υπολογιστές αλλά κοστίζουν 1.000 φορές περισσότερο. Να σημειωθεί επίσης ότι τα δίκτυα αλλάζουν τον τρόπο λειτουργίας της κοινωνίας μας καθώς: υπάρχουν πολλαπλοί τρόποι επικοινωνίας μεταξύ ανθρώπων (email, chat, news-groups κ.λπ.) 7

η διανομή του περιεχομένου γίνεται με διάφορα μέσα και τρόπους (audio, video, news groups κτλ.) υπάρχουν πλέον online υπηρεσίες (ηλεκτρονική αγορά, ηλεκτρονική τακτοποίηση τραπεζικών λογαριασμών, ηλεκτρονική αναζήτηση ιατρικής πληροφορίας κ.λπ.) προκύπτουν νέα προβλήματα, άγνωστα στο παρελθόν (προσωπικά δεδομένα, ηλεκτρονικά πνευματικά δικαιώματα κ.λπ.) Στις παρακάτω παραγράφους θα δοθούν οι βασικές έννοιες που θα πρέπει να είναι σε θέση να γνωρίζει κάποιος προκειμένου να κατανοεί και να αντιλαμβάνεται έννοιες, όπως Δίκτυα επικοινωνιών και Διαδίκτυο. 1.2. Δίκτυα επικοινωνιών Τα δίκτυα επικοινωνιών είναι διατάξεις από υλικό και λογισμικό, οι οποίες επιτρέπουν στους χρήστες την ανταλλαγή πληροφοριών. Οι πληροφορίες αυτές μπορεί να είναι φωνή, ήχοι, γραφικά, εικόνες, κείμενο ή δεδομένα. Το πιο δημοφιλές και ευρέως διαδεδομένο δίκτυο επικοινωνιών είναι το τηλεφωνικό δίκτυο. Ένα δίκτυο υπολογιστών γραφείου είναι ένα δίκτυο επικοινωνιών, το οποίο χρησιμοποιείται από οργανισμούς, εταιρείες, νοσοκομεία κ.λπ. για να συνδέει προσωπικούς υπολογιστές, ώστε να μπορούν να μοιράζονται προγράμματα και δεδομένα και για να συνδέει τους υπολογιστές αυτούς με εκτυπωτές ή με άλλα περιφερειακά π.χ. σχεδιογράφους (plotters). Τα δίκτυα υπολογιστών χρησιμοποιούνται επίσης σε εργοστάσια παραγωγής για να συνδέουν μηχανικά εργαλεία, ρομπότ και αισθητήρες (Σχήμα 1.1). 8

Δίκτυο Η/Υ Σχήμα 1.1: Ένα απλό δίκτυο υπολογιστών Το Διαδίκτυο (Ιnternet) είναι ένα παγκόσμιο σύστημα από αλληλοσυνδεόμενα δίκτυα δικτύων υπολογιστών, το οποίο επιτρέπει σε εκατομμύρια χρήστες να ανταλλάσουν μηνύματα, αρχεία καθώς και σήματα video και ήχου (Σχήμα 1.2). Το εγχείρημα ξεκίνησε το 1969 από το Advanced Research Projects Agency (ARPA) που ανήκει στην κυβέρνηση των Η.Π.Α. και στην αρχική του μορφή είχε ονομαστεί ARPANET. O στόχος ήταν η επικοινωνία και ανταλλαγή δεδομένων μεταξύ των υπολογιστών διαφόρων ερευνητικών ιδρυμάτων της χώρας. Ένα σημαντικό πλεονέκτημα του αρχικού σχεδιασμού ήταν το γεγονός ότι επειδή η πληροφορία μπορούσε να ακολουθεί παραπάνω από μία διαδρομές, ακόμη και σε καταστροφή ενός τμήματος του δικτύου, το δίκτυο θα εξακολουθούσε να λειτουργεί επιτυχώς. 9

Δίκτυο Η/Υ Δίκτυο Η/Υ Δίκτυο Η/Υ Διαδίκτυο INTERNET Σχήμα 1.2: Το Διαδίκτυο (Internet) Παρόλο που όλα αυτά τα συστήματα είναι δίκτυα επικοινωνιών, είναι αρκετά διαφορετικά ως προς την πληροφορία που μεταδίδουν και τον τρόπο με τον οποίο χρησιμοποιούνται. Ωστόσο βασίζονται σε παρόμοιες αρχές λειτουργίας. Κάθε τέτοιο σύστημα είναι σχεδιασμένο για την ανταλλαγή πληροφορίας μεταξύ χρηστών. Οι χρήστες είναι συνήθως άνθρωποι αλλά μπορούν επίσης να είναι προγράμματα υπολογιστών ή συσκευές. Ο υπολογιστής στέλνει ψηφιοποιημένες πληροφορίες (δηλ. σε bits). Δηλαδή, για να μπορέσει ένας υπολογιστής να επικοινωνήσει με το Internet ή με έναν άλλον υπολογιστή μέσω των αναλογικών τηλεφωνικών γραμμών, είναι απαραίτητη η χρήση μιας συσκευής η οποία ονομάζεται modem. Η λέξη modem προέρχεται από τις λέξεις Modulation και Demodulation (διαμόρφωση/αποδιαμόρφωση). Η μονάδα την οποία χρησιμοποιούμε για τη μέτρηση της ταχύτητας μετάδοσης και λήψης των δεδομένων μέσω ενός modem είναι τα bit ανά δευτερόλεπτο (bits per second - bps). Όσο περισσότερα bit ανά δευτερόλεπτο έχει τη δυνατότητα να χειριστεί ένα modem, τόσο πιο γρήγορα μπορεί να στείλει και να λάβει δεδομένα. Ένα τέτοιο δίκτυο υπολογιστών, φαίνεται στο παρακάτω σχήμα 1.3: 10

Modem Modem Διαδίκτυο Σχήμα 1.3: Σύνδεση Ηλεκτρονικών Υπολογιστών μέσω modem 1.3. Κατηγορίες δικτύων επικοινωνιών Όπως λέχθηκε παραπάνω, το δίκτυο επικοινωνιών χρησιμοποιείται για να μπορούν οι χρήστες να ανταλλάζουν δεδομένα, μηνύματα και να μπορούν να χρησιμοποιούν κοινό εξοπλισμό, όπως εκτυπωτές, μόντεμ και άλλο υλικό. Ανάλογα με την έκταση την οποία εξυπηρετούν τα δίκτυα επικοινωνιών χωρίζονται σε τρεις γενικές κατηγορίες: Τοπικά δίκτυα (LAN: Local Area Networks), Μητροπολιτικά δίκτυα (MAN: Metropolitan Area Networks), Ευρείας περιοχής δίκτυα (WAN: Wide Area Networks) (Σχήμα 1.4). Σχήμα 1.4: Γενικές κατηγορίες δικτύων 1.4. Τοπικά Δίκτυα επικοινωνιών Ο όρος τοπικό δίκτυο περιγράφει ένα δίκτυο υπολογιστών. Οι υπολογιστές αυτοί βρίσκονται σε μικρή απόσταση μεταξύ τους (μέσα σε ένα κτίριο ή γραφείο) και μπορούν να επικοινωνήσουν με μεγάλες ταχύτητες (από 10 Mbit/sec μέχρι 100Mbit/sec). 11

Τα βασικά στοιχεία ενός τοπικού δικτύου υπολογιστών είναι το φυσικό μέσο μετάδοσης της πληροφορίας (πχ. καλώδιο), η κάρτα δικτύου (NIC Network Interface Card), η οποία είναι υπεύθυνη για τη ροή των πληροφοριών ανάμεσα στον υπολογιστή και το δίκτυο, και τέλος το λογισμικό σύστημα δικτύου, το οποίο είναι υπεύθυνο για τη σωστή μετάδοση πληροφοριών και τη παροχή διάφορων υπηρεσιών στους χρήστες. Τέλος για την σύνδεση περισσότερων των δυο υπολογιστών, χρειάζεται επιπλέον και ένας διανομέας ή συγκεντρωτής καλωδίωσης (HUB). Παραδείγματα τοπικών δικτύων φαίνονται στο παρακάτω σχήμα 1.5. Σχήμα 1.5: LAN διαφόρων συνδεσμολογιών. 1.5. Μητροπολιτικά Δίκτυα επικοινωνιών Τα μητροπολιτικά δίκτυα (MAN) είναι μια μεγαλύτερη εκδοχή ενός LAN. Μπορεί να καλύπτει ομάδα γειτονικών γραφείων ενός νοσοκομείου. Μπορεί να υποστηρίζει δεδομένα και φωνή και ίσως να σχετίζεται με την καλωδιακή τηλεόραση. Περιορίζονται μέσα στα όρια μιας πόλης και μπορούν να καλύπτουν αποστάσεις από 1 έως και 100 km (Σχήμα 1.6). 12

Σχήμα 1.6: Μητροπολιτικό δίκτυο (MAN). 1.6. Δίκτυα Ευρείας Περιοχής (WAN) Τα δίκτυα ευρείας περιοχής (WAN) μπορούν να απλώνονται πολλές φορές και σε διαφορετικές ηπείρους. Ένα δίκτυο ευρείας περιοχής μπορεί να απαρτίζεται από υπολογιστές και τοπικά δίκτυα που βρίσκονται διαφορετικές πόλεις ή ακόμα και σε διαφορετικές χώρες. Τα Δίκτυα Ευρείας Περιοχής χρησιμοποιούν καλώδια υψηλής ταχύτητας, οπτικές ίνες, και δορυφόρους για τη μεταφορά των δεδομένων και των αρχείων. Τα δίκτυα ευρείας περιοχής χρησιμοποιούνται συνήθως από μεγάλες εταιρείες, κυρίως πολυεθνικές, οι οποίες έχουν δραστηριότητες σε πολλές πόλεις χώρες. Το Internet θεωρείται το μεγαλύτερο δίκτυο ευρείας περιοχής στον κόσμο (Σχήμα 1.7). Σχήμα 1.7: Απεικόνιση δικτύου ευρείας περιοχής (WAN). 13

1.7. Παγκόσμιος Ιστός Ένα τέτοιο δίκτυο ευρείας περιοχής (WAN) και το περισσότερο χρησιμοποιούμενο τμήμα του Διαδικτύου είναι ο Παγκόσμιος Ιστός (World Wide Web - WWW), το οποίο στηρίζεται στο Hypertext Transfer Protocol (HTTP), ένα σύνολο συμβάσεων για την ανταλλαγή αρχείων (αρχεία κειμένου, εικόνας, πολυμέσων κ.λπ.). Μέσω του WWW ένας χρήστης μπορεί να έχει πρόσβαση σε εκατομμύρια σελίδες (web pages), οι οποίες παραπέμπουν η μια στην άλλη με συνδέσμους (links). Οι σελίδες συντάσσονται με τη γλώσσα HTML (HyperText Markup Language). Η πρόσβαση στο web είναι εφικτή με την χρήση ειδικών προγραμμάτων πλοήγησης (Web Browsers). Οι web browsers που επικρατούν είναι ο Netscape Navigator (Netscape) και ο Internet Explorer (Microsoft). Το πρωτόκολλο που δημιουργήθηκε για τον Παγκόσμιο Ιστό και γενικά για τη λειτουργία του Internet, λέγεται TCP/IP (Transmission Control Protocol/ Internet Protocol Πρωτόκολλο Ελέγχου Μετάδοσης/ Πρωτόκολλο Διαδικτύωσης). Το μεν TCP είναι υπεύθυνο για τον κατακερματισμό των πληροφοριών σε μικρότερα κομμάτια (πακέτα) και τη σωστή επανασυγκόλλησή τους, το δε IP είναι υπεύθυνο για την παράδοση των πακέτων στον προορισμό τους. Έτσι κάθε υπολογιστής μπορεί να επικοινωνήσει με οποιονδήποτε άλλο συνδεδεμένο υπολογιστή, επειδή απλά «μιλάνε» την ίδια γλώσσα. Το παρακάτω σχήμα 1.8 παριστάνει τη σχέση ανάμεσα στα διάφορα πρωτόκολλα του Internet: 14

Telnet FTP TCP FTP: μεταφορά αρχείων IP Τοπικά Πρωτόκολλα Δικτύων Local Network Protocol Σχήμα 1.8: Πρωτόκολλα του Internet. 1.8. Περιήγηση στον Παγκόσμιο Ιστό Όπως λέχθηκε παραπάνω για να περιηγηθεί ένας χρήστης χρησιμοποιώντας Η/Υ, μέσα στο Internet (Παγκόσμιος Ιστός), χρειάζεται να συνδέεται κάθε φορά με έναν κεντρικό υπολογιστή, ο οποίος επειδή βρίσκεται μέσα στον Παγκόσμιο Ιστό έχει το όνομα: Web Server. Άρα, Web Server ονομάζουμε το λογισμικό που τρέχει σε ένα κόμβο Internet και επιτρέπει σε άλλους υπολογιστές να αποκτούν αντίγραφα των Web Site που είναι αποθηκευμένα σε αυτόν. Ενώ, αντίστοιχα Web Client ονομάζουμε το λογισμικό που τρέχει ένας οποιοδήποτε Η/Υ και του επιτρέπει να "διαβάζει" Web sites (από το σκληρό του δίσκο ή από το Internet αν είναι συνδεδεμένος με αυτό). Το Web Site είναι ένα σύνολο από Web σελίδες με λίγο ως πολύ κοινό αντικείμενο, αρχιτεκτονική και δομή και οι οποίες συνήθως συστεγάζονται (φιλοξενούνται) στον ίδιο Web Server. Ένα text αρχείο Η/Υ ονομάζεται Web Σελίδα και είναι κατασκευασμένο με τέτοιο τρόπο που να μπορεί να παρουσιάζεται ολοκληρωμένο και στην επιθυμητή για τον δημιουργό του μορφή, με μία μόνο κλήση από τον χειριστή του κατάλληλου λογισμικού. Κάθε Web σελίδα έχει την δική της διεύθυνση μέσα στο Internet. Το αρχείο αυτό έχει μια URL διεύθυνση μέσα στο Internet (Παγκόσμιος Ιστός) και αποτελείται από 3 τμήματα: 15

Το πρωτόκολλο που πρέπει να χρησιμοποιήσουμε για να αποκτήσουμε αυτό το αρχείο. Ο κόμβος στον οποίο είναι τοποθετημένο το αρχείο. Το directory (με το πλήρες path ή τμήμα αυτού κατά περίπτωση) που βρίσκεται το αρχείο και φυσικά το όνομα του αρχείου. Π.χ. στο URL http://www.forthnet.gr/forthnet/index.html το http:// είναι το πρωτόκολλο (HyperText Transfer Protocol), το www.forthnet.gr είναι ο κόμβος και το forthnet/index.html είναι το directory και το όνομα του αρχείου. Η παραπάνω URL σελίδα φαίνεται και στο παρακάτω σχήμα 1.9. WEB Server Forthnet, forthnet/index.html Internet http:// WEB Client Web σελίδα:http://www.forthnet.gr/forthnet/index.html Σχήμα 1.9: Παράδειγμα URL σελίδας 1.9. Σύνοψη Οι αυξανόμενες ανάγκες για αναζήτηση πληροφοριών και ανάπτυξη σε όλους τους τομείς της σύγχρονης ζωής, δημιούργησε τεχνολογίες όπως τα δίκτυα Δικτύων υπολογιστών. Οι συνδέσεις αυτές βοήθησαν στην παροχή της πληροφορίας σε μεγάλο εύρος χρηστών αλλά και ταυτόχρονα στην οργάνωση μεγάλου μέρους αυτής (πληροφορία) σε κεντρικούς υπολογιστές. Μέρος της οργάνωσης αυτής της πληροφορίας και ίσως το πιο σημαντικό αποτελεί και η έννοια των Βάσεων Δεδομένων. 16

2. ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Η αλματώδης ανάπτυξη της επιστήμης της πληροφορικής και των επικοινωνιών τα τελευταία χρόνια έχει καταστήσει την πληροφορία ως ένα από τα βασικότερα και πολυτιμότερα αγαθά. Είναι κοινός τόπος σήμερα η εκτίμηση ότι το αγαθό της πληροφορίας είναι επιθυμητό απ όλους τους εργαζόμενους αλλά και τους εκπαιδευόμενους, ώστε να είναι πιο αποδοτικοί, ανταγωνιστικοί αλλά και παραγωγικοί στην εργασία τους. Τα συστήματα βάσεων δεδομένων τα χρησιμοποιούμε για να μπορούμε να αποθηκεύσουμε, να επεξεργαστούμε αλλά και να εκμεταλλευτούμε αποδοτικά αυτόν τον τεράστιο όγκο των πληροφοριών που αυξάνονται με αλματώδεις ρυθμούς καθημερινά. 2.1. Τα Δεδομένα και οι Πληροφορίες Με τον όρο πληροφορία αναφερόμαστε συνήθως σε ειδήσεις, γεγονότα και έννοιες που αποκτάμε από την καθημερινή μας επικοινωνία και τα θεωρούμε ως αποκτηθείσα γνώση, ενώ τα δεδομένα μπορούν να είναι μη κατάλληλα επεξεργασμένα και μη ταξινομημένα σύνολα πληροφοριών. Ένας αυστηρός ορισμός για το τι είναι δεδομένα και τι είναι πληροφορία, σύμφωνα με την επιτροπή ANSI των ΗΠΑ, είναι ο εξής : Δεδομένα (data) είναι μια παράσταση, όπως γράμματα, αριθμοί, σύμβολα κ.ά. στα οποία μπορούμε να δώσουμε κάποια σημασία (έννοια). Πληροφορία (information) είναι η σημασία που δίνουμε σ ένα σύνολο από δεδομένα, τα οποία μπορούμε να επεξεργαστούμε βάσει προκαθορισμένων κανόνων και να βγάλουμε έτσι κάποια χρήσιμα συμπεράσματα. Με τις πληροφορίες περιορίζεται η αβεβαιότητα που έχουμε για διάφορα πράγματα και βοηθιόμαστε έτσι στο να λάβουμε σωστές αποφάσεις. Τα δεδομένα μπορούν να θεωρηθούν ως τρόποι αναπαράστασης εννοιών και γεγονότων που μπορούν να υποστούν διαχείριση και επεξεργασία. Η συλλογή και αποθήκευση ενός τεράστιου όγκου δεδομένων όπως απαιτούν οι κοινωνικές συνθήκες σήμερα, δεν λύνει τελείως το 17

πρόβλημα της σωστής οργάνωσης και ταξινόμησης των δεδομένων. Τα δεδομένα θα πρέπει να οργανωθούν με τέτοιο τρόπο έτσι ώστε να μπορούμε να τα εντοπίζουμε και να τα αξιοποιούμε εύκολα και γρήγορα και τη στιγμή που τα χρειαζόμαστε. Ένα κλασικό παράδειγμα μη σωστής οργάνωσης δεδομένων θα ήταν για παράδειγμα ο τηλεφωνικός κατάλογος μιας πόλης της Ελλάδας, όπου οι συνδρομητές δεν θα ήταν καταχωρημένοι αλφαβητικά σύμφωνα με το επώνυμο και το όνομά τους, αλλά εντελώς τυχαία. Ένας τέτοιος τηλεφωνικός κατάλογος θα περιείχε μια τεράστια ποσότητα δεδομένων, αλλά θα ήταν ουσιαστικά άχρηστος. Ένα άλλο παράδειγμα μη σωστής οργάνωσης δεδομένων θα ήταν μια πολύ μεγάλη βιβλιοθήκη με χιλιάδες τόμους βιβλίων και χωρίς να διαθέτει κάποιο υποτυπώδες σύστημα οργάνωσης και ταξινόμησης των βιβλίων. Ούτε οι υπάλληλοι της βιβλιοθήκης θα μπορούσαν να κάνουν τη δουλειά τους αλλά ούτε και οι επισκέπτες θα μπορούσαν να αξιοποιήσουν την πληθώρα των πληροφοριών που περιέχονται στα βιβλία. Εκτός λοιπόν από τη μόνιμη αποθήκευση των δεδομένων, χρειαζόμαστε και κάποιους τρόπους ευέλικτης και αποδοτικής οργάνωσής τους. Χαρακτηριστικά παραδείγματα δεδομένων που απαιτούν σωστή και αποδοτική οργάνωση είναι τα εξής : Τα στοιχεία υπαλλήλων, πελατών, προμηθευτών και παραγγελιών μιας εμπορικής επιχείρησης. Τα στοιχεία υλικών μιας αποθήκης. Τα στοιχεία ταινιών, πελατών και δανεισμών μιας βιντεολέσχης. Τα στοιχεία υπαλλήλων, γιατρών, ασθενών αλλά και υλικών ενός νοσοκομείου. Τα στοιχεία βιβλίων, χρηστών (δανειστών) και δανεισμών μιας βιβλιοθήκης. 2.2. Η Οργάνωση Αρχείων Ο πιο γνωστός τρόπος οργάνωσης δεδομένων με τη χρήση ηλεκτρονικών υπολογιστών είναι σε αρχεία εγγραφών. Για να κατανοήσουμε 18

καλύτερα ορισμένες έννοιες, θα εξετάσουμε την περίπτωση ενός αρχείου πελατών και παραγγελιών μιας εμπορικής επιχείρησης. Για να οργανώσουμε σωστά το αρχείο μας, θα πρέπει να δημιουργήσουμε καρτέλες για τους πελάτες, αλλά και για τις παραγγελίες τους αργότερα, που θα πρέπει να περιέχουν τα εξής στοιχεία ανά πελάτη : Κωδικός Επώνυμο Όνομα Διεύθυνση ΤΚ Πόλη Τηλέφωνο ΑΦΜ ΔΟΥ Η αντιστοίχιση του παλιού τρόπου οργάνωσης με τις καρτέλες σε σχέση με τον σύγχρονο ηλεκτρονικό τρόπο οργάνωσης, έχει ως εξής : Συρτάρι Αρχείο Δεδομένων Καρτέλα πελάτη Εγγραφή του αρχείου δεδομένων Στοιχείο της καρτέλας Πεδίο της εγγραφής Ένα αρχείο (file) θα μπορούμε να το χαρακτηρίσουμε σαν ένα σύνολο που αποτελείται από οργανωμένα ομοειδή στοιχεία. Τα στοιχεία ενός αρχείου μπορούμε να τα οργανώσουμε σε λογικές ενότητες και το σύνολο των στοιχείων που περιέχει μια λογική ενότητα καλείται εγγραφή (record). Το κάθε στοιχείο της εγγραφής καλείται πεδίο (field). Το πεδίο αποτελεί και τη μικρότερη δυνατή υποδιαίρεση των στοιχείων ενός αρχείου. Ένα πεδίο χαρακτηρίζεται από τον μέγιστο αριθμό των χαρακτήρων (bytes) που απαιτούνται για την καταχώρησή του στη μνήμη του υπολογιστή και που αποκαλείται μήκος του πεδίου (field length). 19

Σε μια οργάνωση αρχείου όπως είναι οι πελάτες μιας εμπορικής επιχείρησης που είδαμε νωρίτερα, τα αντίστοιχα πεδία όλων των εγγραφών καταλαμβάνουν τον ίδιο αριθμό σε bytes που είναι αυτός που έχουμε ορίσει κατά τη δημιουργία του αρχείου. Για παράδειγμα, αν ορίσαμε ότι το πεδίο Επώνυμο θα έχει μήκος 15 χαρακτήρες, τότε το πεδίο της εγγραφής του πελάτη με επώνυμο Παπαδόπουλος, αλλά και το πεδίο της εγγραφής του πελάτη με επώνυμο Βες θα καταλαμβάνουν από 15 bytes στη μνήμη του υπολογιστή, ενώ αν ένας πελάτης ονομάζεται Παπαχριστοδουλόπουλος, τότε θα γίνει αποκοπή του επωνύμου του και θα καταχωρηθούν στη μνήμη του υπολογιστή μόνο τα 15 πρώτα γράμματα, δηλ. τα Παπαχριστοδουλό. Ένα πεδίο χαρακτηρίζεται ακόμη και από το είδος των δεδομένων που μπορεί να περιέχει, όπως : Αλφαριθμητικό (alphanumeric), μπορεί να περιέχει γράμματα, ψηφία ή και ειδικούς χαρακτήρες. Αριθμητικό (numeric), μπορεί να περιέχει μόνο αριθμούς. Αλφαβητικό (alphabetic), μπορεί να περιέχει μόνο γράμματα (αλφαβητικούς χαρακτήρες). Ημερομηνίας (date), μπορεί να περιέχει μόνο ημερομηνίες. Δυαδικό (binary), μπορεί να περιέχει ειδικού τύπου δεδομένα, όπως εικόνες, ήχους κ.ά. Λογικό (logical), μπορεί να περιέχει μόνο μία από δύο τιμές, οι οποίες αντιστοιχούν σε δύο διακριτές καταστάσεις και μπορούν να χαρακτηρισθούν σαν 0 και 1 ή σαν αληθές (true) και ψευδές (false). Σημειώσεων (memo), μπορεί να περιέχει κείμενο με μεταβλητό μήκος, το οποίο μπορεί να είναι και αρκετά μεγάλο και συνήθως αποθηκεύεται σαν ξεχωριστό αρχείο από το κύριο αρχείο. Όσον αφορά τις εγγραφές, χρήσιμοι ορισμοί είναι οι εξής : Μήκος εγγραφής (record length) καλείται το άθροισμα που προκύπτει από τα μήκη των πεδίων που την αποτελούν. 20

Δομή εγγραφής (record layout) ή γραμμογράφηση καλείται ο τρόπος με τον οποίο οργανώνουμε τα πεδία μιας εγγραφής. Διάβασμα (read) από αρχείο σημαίνει τη μεταφορά των δεδομένων του αρχείου, που γίνεται συνήθως ανά μία εγγραφή, από το μέσο αποθήκευσης (σκληρό δίσκο ή δισκέτα) στην κεντρική μνήμη του υπολογιστή για επεξεργασία. Γράψιμο (write) σε αρχείο σημαίνει μεταφορά των δεδομένων του αρχείου, που γίνεται συνήθως ανά μία εγγραφή, από την κεντρική μνήμη του υπολογιστή στο μέσο αποθήκευσης (σκληρό δίσκο ή δισκέτα). 2.3. Προβλήματα της Οργάνωσης Αρχείων Στα αρχικά στάδια της οργάνωσης αρχείων, ήταν πολύ συνηθισμένη πρακτική η δημιουργία ξεχωριστών εφαρμογών (προγραμμάτων) και ξεχωριστών αρχείων, όπως για παράδειγμα η δημιουργία ενός αρχείου πελατών και ενός άλλου ανεξάρτητου αρχείου για τις παραγγελίες των πελατών. Τα προβλήματα που προέκυψαν από την πρακτική αυτή είναι τα εξής: Πλεονασμός των δεδομένων (data redundancy). Υπάρχει η περίπτωση να έχουμε επανάληψη των ίδιων δεδομένων σε αρχεία διαφορετικών εφαρμογών. Για παράδειγμα, αν έχουμε ένα αρχείο πελατών και ένα αρχείο παραγγελιών αυτών των πελατών, είναι σχεδόν σίγουρο ότι θα υπάρχουν κάποια στοιχεία των πελατών που θα υπάρχουν και στα δύο αρχεία. Ασυνέπεια των δεδομένων (data inconsistency). Αυτό μπορεί να συμβεί όταν υπάρχουν τα ίδια στοιχεία των πελατών (πλεονασμός) και στο αρχείο πελατών και στο αρχείο παραγγελιών και χρειασθεί να γίνει κάποια αλλαγή στη διεύθυνση ή στα τηλέφωνα κάποιου πελάτη, οπότε είναι πολύ πιθανό να γίνει η διόρθωση μόνο στο ένα αρχείο και όχι και στο άλλο. Αδυναμία μερισμού δεδομένων (data sharing). Μερισμός δεδομένων σημαίνει δυνατότητα για κοινή χρήση των στοιχείων κάποιων αρχείων. Για παράδειγμα, ο μερισμός δεδομένων θα ήταν χρήσιμος αν με την 21

παραγγελία ενός πελάτη μπορούμε να έχουμε πρόσβαση την ίδια στιγμή στο αρχείο πελατών για να δούμε το υπόλοιπο του πελάτη και μετά στο αρχείο της αποθήκης για να δούμε αν είναι διαθέσιμα τα προϊόντα που παρήγγειλε ο συγκεκριμένος πελάτης. Η αδυναμία μερισμού δεδομένων δημιουργεί καθυστέρηση στη λήψη αποφάσεων και στην εξυπηρέτηση των χρηστών. Αδυναμία προτυποποίησης. Έχει να κάνει με την ανομοιομορφία και με την διαφορετική αναπαράσταση και οργάνωση των δεδομένων στα αρχεία των εφαρμογών. Η αδυναμία αυτή δημιουργεί προβλήματα προσαρμογής των χρηστών καθώς και προβλήματα στην ανταλλαγή δεδομένων μεταξύ διαφορετικών συστημάτων. 2.4. Οι Βάσεις Δεδομένων και τα ΣΔΒΔ (DBMS) Για να δοθεί μια λύση σ όλα τα παραπάνω προβλήματα, και με βάση το γεγονός ότι η χρήση των ηλεκτρονικών υπολογιστών και συνεπώς η ηλεκτρονική καταχώρηση και επεξεργασία δεδομένων αυξήθηκε κατακόρυφα ήδη από τη δεκαετία του 70 στις μεγάλες επιχειρήσεις και άρα είχαμε πάρα πολλές εφαρμογές να επεξεργάζονται δεδομένα σε πάρα πολλά αρχεία ταυτόχρονα, προτάθηκε η συνένωση όλων των αρχείων μιας εφαρμογής. Εκτός, όμως, από τη συνένωση των αρχείων, απαιτείτο και μια σωστή οργάνωσή τους. Δημιουργήθηκαν έτσι οι Τράπεζες Πληροφοριών ή Βάσεις Δεδομένων (Data Bases). Μια Βάση Δεδομένων (ΒΔ) είναι ένα σύνολο αρχείων με υψηλό βαθμό οργάνωσης τα οποία είναι συνδεδεμένα μεταξύ τους με λογικές σχέσεις, έτσι ώστε να μπορούν να χρησιμοποιούνται από πολλές εφαρμογές και από πολλούς χρήστες ταυτόχρονα. Υπάρχει ένα ειδικό λογισμικό το οποίο μεσολαβεί ανάμεσα στις αρχεία δεδομένων και τις εφαρμογές που χρησιμοποιούν οι χρήστες και αποκαλείται Σύστημα Διαχείρισης Βάσης Δεδομένων (ΣΔΒΔ) ή DBMS (Data Base Management System). Το ΣΔΒΔ είναι στην ουσία ένα σύνολο από προγράμματα και υπορουτίνες που έχουν να κάνουν με τον χειρισμό της βάσης δεδομένων, όσον αφορά τη δημιουργία, τροποποίηση, διαγραφή στοιχείων, με ελέγχους ασφαλείας κ.ά. 22

Οι χρήστες των εφαρμογών αντλούν τα στοιχεία που τους ενδιαφέρουν από τη βάση δεδομένων χωρίς να είναι σε θέση να γνωρίζουν με ποιο τρόπο είναι οργανωμένα τα δεδομένα σ αυτήν. Το ΣΔΒΔ παίζει τον ρόλο του μεσάζοντα ανάμεσα στον χρήστη και τη βάση δεδομένων και μόνο μέσω του ΣΔΒΔ μπορεί ο χρήστης να αντλήσει πληροφορίες από τη βάση δεδομένων. Ένα ΣΔΒΔ μπορεί να είναι εγκατεστημένο σ έναν μόνο υπολογιστή ή και σ ένα δίκτυο υπολογιστών και μπορεί να χρησιμοποιείται από έναν χρήστη ή και από πολλούς χρήστες. Ένα Σύστημα Βάσης Δεδομένων (ΣΒΔ) ή DBS (Data Base System) αποτελείται από το υλικό, το λογισμικό, τη βάση δεδομένων και τους χρήστες. Είναι δηλαδή ένα σύστημα με το οποίο μπορούμε να αποθηκεύσουμε και να αξιοποιήσουμε δεδομένα με τη βοήθεια ηλεκτρονικού υπολογιστή. Αναλυτικά: Το υλικό (hardware) αποτελείται όπως είναι γνωστό από τους ηλεκτρονικούς υπολογιστές, τα περιφερειακά, τους σκληρούς δίσκους, τις μαγνητικές ταινίες κ.ά., όπου είναι αποθηκευμένα τα αρχεία της βάσης δεδομένων αλλά και τα προγράμματα που χρησιμοποιούνται για την επεξεργασία τους. Το λογισμικό (software) είναι τα προγράμματα που χρησιμοποιούνται για την επεξεργασία των δεδομένων (στοιχείων) της βάσης δεδομένων. Η βάση δεδομένων (data base) αποτελείται από το σύνολο των αρχείων όπου είναι αποθηκευμένα τα δεδομένα του συστήματος. Τα στοιχεία αυτά μπορεί να βρίσκονται αποθηκευμένα σ έναν φυσικό υπολογιστή αλλά και σε περισσότερους. Όμως, στον χρήστη δίνεται η εντύπωση ότι βρίσκονται συγκεντρωμένα στον ίδιο υπολογιστή. Τα δεδομένα των αρχείων αυτών είναι ενοποιημένα (data integration), δηλ. δεν υπάρχει πλεονασμός (άσκοπη επανάληψη) δεδομένων και μερισμένα (data sharing), δηλ. υπάρχει δυνατότητα ταυτόχρονης προσπέλασης των δεδομένων από πολλούς χρήστες. Ο κάθε χρήστης έχει διαφορετικά δικαιώματα και βλέπει διαφορετικό κομμάτι της βάσης δεδομένων, ανάλογα με τον σκοπό για τον οποίο συνδέεται. Οι χρήστες (users) μιας βάσης δεδομένων χωρίζονται στις εξής κατηγορίες : 23