Πλοήγηση ανά Συγγραφέας "Kaparakis, Grigoris"
Τώρα δείχνει 1 - 1 of 1
Αποτελέσματα ανά σελίδα
Επιλογές ταξινόμησης
Τεκμήριο Συστήματα συλλογισμού σε χωροχρονικές βάσεις δεδομένων.(Τ.Ε.Ι. Κρήτης, Τεχνολογικών Εφαρμογών (Σ.Τ.Εφ), Τμήμα Μηχανικών Πληροφορικής Τ.Ε., 2018-07-13) Καπαράκης, Γρηγόρης; Παπαδάκης, Αλέξανδρος; Σόγιας, Κωνσταντίνος; Kaparakis, Grigoris; Papadakis, Alexandros; Sogias, KonstantinosΜία βάση δεδομένων δεν είναι σταθερή και συνεχώς τα δεδομένα της μεταβάλλονται. Κάποιες πράξεις ωθούν τα δεδομένα να αλλάζουν κατάσταση και αυτό έχει σαν αποτέλεσμα οι συνθήκες ακεραιότητας να παραβιάζονται. Όμως μια βάση για να είναι σωστά δομημένη και να λειτουργεί πρέπει να τηρεί όλες τις συνθήκες ακεραιότητας. Τα αποτελέσματα μιας πράξης μπορεί να έχουν άμεσο ή έμμεσο αντίκτυπο στα δεδομένα. Οι πράξεις αυτές λέγονται fluents. Παραδείγματος χάριν Έχουμε μια βάση που καταγραφεί τα δεδομένα των υπάλληλων μιας εταιρίας. Εάν ένας υπάλληλος κάνει κάποιο πλημμέλημα έχει σαν αποτέλεσμα να μην παίρνει μισθό και σαν έμμεσο να μην μπορεί να πάρει προαγωγή. Όμως εάν κάποιος υπάλληλος είναι κακός δεν θα πάρει αύξηση αλλά δεν συνεπάγετε ότι έχει κάνει και πλημμέλημα. Όπως λοιπόν παρατηρούμε από το προηγούμενο παράδειγμα, κάποια αντικείμενα επηρεάζονται από τις πράξεις που εκτελούμε, ενώ κάποια αλλά παραμένουν ανεπηρέαστα. Αυτό χαρακτηρίζετε σαν frame problem και οριστικέ από τον McCanthy and Hayes το 1969, Lifshitz, 1990, Thielscher, 1997, Reiter, 1980, 1991, Fikes and Nilsson, 1971, McCain and Turner, 1995, Denecker and Ternovska, 2007[1][2][3][4][5][6]. Όπως αναφέραμε σε προηγουμένη παράγραφο, μια βάση είναι σημαντικό να τηρεί τις συνθήκες ακεραιότητας της. Έτσι μια βάση θεωρείτε δομημένη και λειτουργικά σωστή όταν τηρεί όλους τους περιορισμούς ακεραιότητας καθώς εκτελείτε μια πράξη. Αυτό που εντοπίζετε συχνά, είναι μετά από πράξεις που τροποποιούν ή εισάγουν δεδομένα, να αναγκάζουν την βάση να παραβιάζει τις συνθήκες ακεραιότητας που έχουν οριστεί. Συνεπώς αυτό το πρόβλημα μας αναγκάζει να χειριζόμαστε τις καταστάσεις της βάσεις με περισσότερη προσοχή ώστε να μην γίνονται αυτοί οι παραβιασμοί. Λόγο των προβλημάτων που αναφέρονται παραπάνω γίνεται χρήση των fluent όπου τα προσαρμόζουμε με τέτοιο τρόπο έτσι ώστε κάθε πράξη να έχει επίδραση μόνο στην επόμενη κατάσταση. H διατήρηση των fluents λοιπόν είναι πολύ σημαντική. Πολλές φορές οι σχεδιαστές και οι προγραμματιστές δεν μπορούν να γνωρίζουν όλες τις αλλαγές που προκύπτουν, είναι απαραίτητο όμως να τα λάβουμε υπόψιν μας. Ένας τρόπος είναι να το κάνουμε χειροκίνητα δηλαδή για κάθε πράξη που συμβαίνει να γνωρίζουμε και να τηρούμε τις συναλλαγές που προκύπτουν. Κάτι τέτοιο μπορεί να είναι εφικτό σε ένα μικρό σύστημα, αλλά σε ένα αρκετά περίπλοκο είναι ιδιαίτερα δύσκολο καθώς μπορεί μια πράξη που κάνουμε σε t0 να έχει διαφορετική επίδραση στην βάση εάν συμβεί t1. Έτσι υλοποιήθηκε μια βάση δεδομένων οπού υποστηρίζει όλους τους περιορισμούς που έχουν τεθεί και μια εφαρμογή που καθιστά εύκολη την λειτουργία της αυτής της βάσης δεδομένων. Η βάση έχει τέσσερις πίνακες και πέντε triggers. Με την βοήθεια των triggers υποστηρίζονται οι περιορισμοί ακεραιότητας αλλά και η σχεδίαση των πινάκων έγινε με γνώμονα την ορθή λειτουργία των περιορισμών που έχουν τεθεί. Τέλος με την εφαρμογή που υλοποιήθηκε στην γλώσσα προγραμματισμού JAVA ελέγχετε η βάση δεδομένων και γίνονται εφικτές οι ενέργειες από τον χρήστη προς την βάση δεδομένων.