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

Σχετικά έγγραφα
Εργαστήριο Βάσεων Δεδομένων

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

ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ. Κάθε υποπρόγραμμα έχει μόνο μία είσοδο και μία έξοδο. Κάθε υποπρόγραμμα πρέπει να είναι ανεξάρτητο από τα άλλα.

. Εργαστήριο Βάσεων Δεδομένων. Triggers

Εργαστήριο Βάσεων Δεδομένων. Triggers

Αποθηκευμένες Διαδικασίες Stored Routines (Procedures & Functions)

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Δοµές Δεδοµένων

MySQL stored procedures

Εργαστήριο 6 ο 7 ο / Ερωτήματα Ι

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ

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

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

01 SOLUTIONS HELLAS Ε.Π.Ε. Χελμού 20, Τ.Κ Μαρούσι Αττικής Τηλ.: Fax:

9η Εργαστηριακή Άσκηση: Stored Procedures - Triggers. Αποθηκευμένες Διαδικασίες (Stored Procedures):

Μοντελοποίηση Συστημάτων

Τα συγκεντρωτικά ερωτήματα αφορούν στην ομαδοποίηση των δεδομένων και στη. χρήση συναρτήσεων ομαδοποίησης κατά την εκτέλεση ενός ερωτήματος προβολής

Είσοδος στην εφαρμογή

#include <stdlib.h> Α. [-128,127] Β. [-127,128] Γ. [-128,128]

Ιατρική Πληροφορική. Δρ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ. Ε. Χρήσιμοι Σύνδεσμοι

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

Γενικά. Change Reference

Άσκηση 1 (ανακοινώθηκε στις 20 Μαρτίου 2017, προθεσμία παράδοσης: 24 Απριλίου 2017, 12 τα μεσάνυχτα).

Παρουσίαση της εφαρμογής. e-επιμελητήριο με WebΑιτήσεις

Μοντελοποίηση Συστημάτων

Υποβολή Πιστοποιητικού

Παρακάτω προτείνεται μια αλληλουχία ενεργειών την οποία ο χρήστης πρέπει να ακολουθήσει για να αξιοποιήσει τις δυνατότητες της εφαρμογής.

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

Στη C++ υπάρχουν τρεις τύποι βρόχων: (a) while, (b) do while, και (c) for. Ακολουθεί η σύνταξη για κάθε μια:

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ

Σύβακας Σταύρος ΠΕ19,MSc. IT ΣΥΒΑΚΑΣ ΣΤΑΥΡΟΣ ΕΡΩΤΗΜΑΤΑ

Δημιουργία Άρθρου Γενικής Λογιστικής

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι. Ενότητα 9α: Περιορισμοί (Constraints) Εναύσματα (Triggers) Ευαγγελίδης Γεώργιος Τμήμα Εφαρμοσμένης Πληροφορικής

8.4. Δραστηριότητες - ασκήσεις

Εργαστήριο 5o. Σχέσεις πινάκων Ακεραιότητα αναφορών. Ευάγγελος Γ. Καραπιδάκης

Το Σχεσιακό Μοντέλο 2

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

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

Οδηγίες για την Ηλεκτρονική Υποβολή των Δηλώσεων Φορολογικής

ΑΔΑ: ΒΕΦΔ4691ΩΓ-8ΚΩ ΑΝΑΡΤΗΤΕΟ ΣΤΟ ΔΙΑΔΙΚΤΥΟ. Βαθμός Ασφαλείας. Αθήνα, 7 Ιανουαρίου Αριθμ. Πρωτ. Βαθμός Προτ/τας Π15/ 9.

Επιλέγοντας προσωπικό μπορείτε να δείτε μία κατάσταση με τον προσωπικό σας.

Α2. Να γράψετε στο τετράδιο σας τον αριθμό 1-4 κάθε πρότασης και δίπλα το γράμμα που δίνει τη σωστή επιλογή.

Λειτουργικά Συστήματα 7ο εξάμηνο, Ακαδημαϊκή περίοδος

Πληροφορική & Τηλεπικοινωνίες Υλοποίηση Συστημάτων Βάσεων Δεδομένων - Χειμερινό Εξάμηνο Καθηγητής Δ. Γουνόπουλος

ΣΧΕΣΙΑΚΕΣ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ

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

Kεφάλαιο 11 Λίστες και Ανάλυση Δεδομένων Kεφάλαιο 12 Εργαλεία ανάλυσης πιθανοτήτων Kεφάλαιο 13 Ανάλυση δεδομένων...

Βάσεις Δεδομένων 2η εργαστηριακή άσκηση

Τμήμα Διοίκησης Επιχειρήσεων

Εγχειρίδιο Χρήσης Περιγραφή της Υπηρεσίας e-ραντεβου

Άσκηση 3 (ανακοινώθηκε στις 24 Απριλίου 2017, προθεσμία παράδοσης: 2 Ιουνίου 2017, 12 τα μεσάνυχτα).

Εγχειρίδιο Χρήστη Φάση 2: Αρχική Καταχώρηση Συµβάσεων

Ιατρική Πληροφορική. Δρ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ.Ε.

Πληροφορική & Τηλεπικοινωνίες K18 - Υλοποίηση Συστημάτων Βάσεων Δεδομένων Εαρινό Εξάμηνο

MySQL + Γλώσσα Προγραμματισμού. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

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

Πληροφορική & Τηλεπικοινωνίες K18 - Υλοποίηση Συστηµάτων Βάσεων εδοµένων Εαρινό Εξάµηνο

Σύστημα Κεντρικής Υποστήριξης της Πρακτικής Άσκησης Φοιτητών ΑΕΙ

Ηλεκτρονικοί Υπολογιστές ΙI. Βάσεις Δεδομένων. Ακαδημαϊκό Έτος Εργαστήριο 2. Διαφάνεια 1. Κάπαρης Αναστάσιος

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

Αρ. Πρωτ.: /714/0015 ΓΕΝΙΚΗ Δ/ΝΣΗ ΦΟΡΟΛΟΓΙΑΣ ΠΟΛ: 1174 Δ/ΝΣΗ ΚΩΔΙΚΑ ΒΙΒΛΙΩΝ & ΣΤΟΙΧΕΙΩΝ (Δ15) ΤΜΗΜΑ Α

ΟΔΗΓΙΕΣ ΓΙΑ ΤΗ ΔΗΛΩΣΗ ΜΑΘΗΜΑΤΩΝ ΓΙΑ ΤΟ ΧΕΙΜΕΡΙΝΟ. Για να πραγματοποιήσετε την δήλωσή σας μεταβαίνετε στο σύνδεσμο:

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

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ACCESS

Διαχείριση Υποκαταστημάτων στα Έσοδα - Έξοδα

Οδηγίες Συμπλήρωσης της Έκθεσης Ολοκλήρωσης

Για την υλοποίηση του προγράμματος χρειάζονται 3 βασικές κλάσεις.

Οδηγίες Χρήσης της MySQL

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

Επανάληψη για τις Τελικές εξετάσεις. (Διάλεξη 24) ΕΠΛ 032: ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕΘΟΔΩΝ ΕΠΙΛΥΣΗΣ ΠΡΟΒΛΗΜΑΤΩΝ

Μαζική Έκδοση Παραστατικών

Ορισμοί Σχεσιακού Μοντέλου και (απλές)τροποποιήσεις Σχέσεων στην SQL. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ

Προγραμματισμός Διαδικτύου Ασκήσεις Εργαστηρίου

ΗΥ240: Δομές Δεδομένων Εαρινό Εξάμηνο Ακαδημαϊκό Έτος 2017 Διδάσκουσα: Παναγιώτα Φατούρου Προγραμματιστική Εργασία - 2o Μέρος

ΣΥΒΑΚΑΣ ΣΤΑΥΡΟΣ ΕΡΩΤΗΜΑΤΑ

Σχεσιακό Μοντέλο Περιορισμοί Μετατροπή ER σε Σχεσιακό Παράδειγμα.. Εργαστήριο Βάσεων Δεδομένων. Relational Model

Διαχείριση Αξιόγραφων

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

Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL

Διαχείριση Ωρολογίων Προγραμμάτων Εκπαιδευτικών

Διαχείριση Ωρολογίων Προγραμμάτων

ΣΥΧΝΕΣ ΕΡΩΤΗΣΕΙΣ-ΑΠΑΝΤΗΣΕΙΣ ΠΡΟΣ ΤΟΥΣ ΧΡΗΣΤΕΣ (Γονείς/Κηδεμόνες μαθητών) του συστήματος e-eggrafes

Διαδικασία Intrastat 1

Λειτουργικά Συστήματα 7ο εξάμηνο, Ακαδημαϊκή περίοδος

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

Τεχνολογικό Εκπαιδευτικό Ίδρυμα Πάτρας

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

ELECTRONICS & SOFTWARE APPLICATIONS. Οδηγίες. για την. του προγράμματος

Εισαγωγή Κεφάλαιο 1: Εγκατάσταση της Access Κεφάλαιο 2: Βάσεις δεδομένων και δομικά στοιχεία της Access

Εργαστήριο βάσεων δεδομένων. MySQL Stored Procedures

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού

ΣΕΤ ΑΣΚΗΣΕΩΝ 4. Προθεσµία: 8/1/12, 22:00

Σύστημα Κεντρικής Υποστήριξης της Πρακτικής Άσκησης Φοιτητών ΑΕΙ

an:3 are:6 a:10

Εγχειρίδιο Χρήσης. Επεξεργασία Προσφορών

Soft1 Version

Δομημένος Προγραμματισμός

«Διαδικτυακό Σύστημα Ηλεκτρονικής Διαχείρισης και Διάθεσης Μαθημάτων»

ΤΑΞΙΝΟΜΗΣΗ ΑΠΟΤΕΛΕΣΜΑΤΩΝ ΕΡΩΤΗΜΑΤΟΣ

Transcript:

Εργαστήριο Βάσεων Δεδομένων 2012-2013 Άσκηση 4 Ημερομηνία Παράδοσης: 14 Ιανουαρίου 2013 Σκοπός της άσκησης είναι, σε μια έτοιμη βάση δεδομένων: 1. Υλοποίηση stored procedures. 2. Υλοποίηση triggers. Σημείωση #1: Τα scripts που αποτελούν τα παραδοτέα της άσκησης θα πρέπει να τρέχουν χωρίς λάθη στη βάση που δίνεται ως προτεινόμενη λύση στην δεύτερη άσκηση και όχι στη βάση που παραδώσατε εσείς. Για τη βάση που δίνεται στη σελίδα του μαθήματος ισχύει το κείμενο προδιαγραφών, το και το σχεσιακό που περιλαμβάνονται στη δεύτερη άσκηση. Προσοχή! Για τις ανάγκες της άσκησης 4 ανανεώθηκε στις 28 Δεκεμβρίου η λύση της άσκησης 2. Ξανακατεβάστε τα create και insert scripts πριν απαντήσετε στα ερωτήματα! Σημείωση #2: Στα scripts πρέπει να συμπεριλάβετε τις κατάλληλες delimiter εντολές έτσι ώστε να τρέχουν απευθείας χωρίς να προκαλείται λάθος και να επιτρέπει την εκτέλεση άλλων queries μετά, με τον αρχικό delimiter. Stored Procedures 1. Stored procedure η οποία δέχεται ως είσοδο τον κωδικό μιας επιχείρησης και εκτυπώνει την επωνυμία της και τον τίτλο, την επωνυμία και τον τίτλο της γονικής επιχείρησης κοκ μέχρι τη ρίζα του δέντρου των επιχειρήσεων. Ένα παράδειγμα κλήσης για αυτή την stored procedure είναι το ακόλουθο: 2. Stored procedure η οποία δέχεται ως είσοδο τον κωδικό μιας ΔΟΥ, εκτυπώνει τον κωδικό, την επωνυμία και το διακριτικό τίτλο κάθε επιχείρησης από αυτή τη ΔΟΥ χωριστά και για κάθε επωνυμία εκτυπώνει τη λίστα των ελεγκτών που την έχουν ελέγξει (ονοματεπώνυμο, ΑΦΜ, Σ.Ο.Ε.Λ., τύπος). Ένα παράδειγμα κλήσης για αυτή την stored procedure είναι το ακόλουθο:

Προαιρετικά #1: Μπορείτε να μορφοποιήσετε την έξοδο της stored procedure για να είναι όπως παρακάτω? Προαιρετικά #2: Πως μπορούμε να εκτυπώσουμε τα αποτελέσματα όπως παρακάτω?

3. Stored procedure η οποία να δέχεται ως είσοδο τον κωδικό μιας επιχείρησης για να την διαγράψει. Πριν πραγματοποιήσει την διαγραφή, μεταφέρει τα υποκαταστήματα αυτής της επιχείρησης στη γονική της επιχείρηση. Ένα παράδειγμα λειτουργίας αυτής της stored procedure είναι το ακόλουθο: 4. Stored Procedure η οποία καλείται με παράμετρο τον κωδικό μιας επιχείρησης, ελέγχει όλα τα ποσοστά μετοχών που έχουν εισαχθεί για αυτή την επιχείρηση και εξετάζει αν έχουν άθροισμα λιγότερο ή ίσο με 100%. Αν όχι, τότε επιχειρεί να διορθώσει τα ποσοστά διαγράφοντας την καταλληλότερη εγγραφή μετοχών. Ως καταλληλότερη εγγραφή θεωρείται αυτή της οποίας η διαγραφή θα φέρει το ποσοστό όσο πιο κοντά στο 100% γίνεται, ανεξάρτητα με το αν είναι πάνω ή κάτω απ' το 100%. Αν το συνολικό ποσοστό δεν πέσει κάτω από το 100% με τη διαγραφή, τότε κάνει και δεύτερη, τρίτη κοκ έως ότου το ποσοστό να είναι μικρότερο ή ίσο του 100%. Σημείωση: Το ποσοστό κατά σύμβαση αποθηκεύεται στο percentage στη μορφή μέχρι την εκατοντάδα. Δηλαδή 45.00 για το 45% και όχι 0.45. Παρακάτω είναι παραδείγματα κλήσης της stored procedure με βάση τα νέα δεδομένα για τη λύση της άσκησης 2!

Triggers 1. Trigger ο οποίος κατά την εισαγωγή ενός φυσικού προσώπου ελέγχει αν το email είναι σε σωστή μορφή (το απλό <κάτι>@<κάτιάλλο>.<ext>). Αν όχι, αποτρέπει την εισαγωγή. 2. Trigger ο οποίος κατά την εισαγωγή μιας επιχείρησης σε ένα επιμελητήριο ελέγχει εαν ο τίτλος είναι μοναδικός για τις επιχειρήσεις του επιμελητηρίου στο οποίο ανήκει. Αν δεν είναι μοναδικός, αποτρέπει την εισαγωγή. 3. Trigger ο οποίος κατά την εισαγωγή των πληροφοριών ενός ελέγχου από έναν ελεγκτή, ελέγχει εάν η ημερομηνία έναρξης και η ημερομηνία λήξης απέχουν τουλάχιστον μια εβδομάδα. Αν όχι, μεταβάλλει την ημερομηνία λήξης έτσι ώστε να απέχει ακριβώς μια εβδομάδα από την ημερομηνία έναρξης. Σημείωση: Δείτε τις συναρτήσεις Date και Time της MySQL (για την έκδοση 5.5: http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html) Παρατηρήσεις: Επειδή διατυπώθηκαν πολλές απορίες σε σχέση με τη σχέση «υποκατάστημα» διευκρινίζουμε ότι σημαίνει ότι σε κάθε επιχείρηση αποθηκεύεται το κλειδί της γονικής της επιχείρησης, δηλαδή ποιάς είναι υποκατάστημα η συγκεκριμένη επιχείρηση. Το πεδίο branch της βάσης περιέχει το κλειδί της επιχείρησης στην οποία είναι branch η τρέχουσα εγγραφή, ενώ αν δεν είναι branch και είναι γονική, τότε περιέχει NULL ή τον ίδιο της τον κωδικό. Με αυτή την παραδοχή να λύσετε την παραπάνω άσκηση. Για παράδειγμα αν έχουμε μια εγγραφή με κλειδί 1 για την επιχείρηση Α και μια εγγραφή με κλειδί 2 για την επιχείρηση Β και στην εγγραφή της Β περιέχεται η τιμή 1 στο πεδίο branch, τότε αυτό σημαίνει ότι η Α είναι γονική της Β, δηλαδή ότι η Β είναι υποκατάστημα της Α. Παράδοση: Η παράδοση της εργασίας θα γίνει ηλεκτρονικά μέσω της υπηρεσίας υποβολής εργασιών στην οποία έχετε πρόσβαση μέσω της διεύθυνσης http://dblab.ceid.upatras.gr (απαιτείται εγγραφή). Το παραδοτέο θα είναι ένα συμπιεσμένο αρχείο με όνομα dbxxxx2012.zip όπου xxxx o AM σας, το οποίο θα περιλαμβάνει: 1. Το txt που απαντούν στα παραπάνω ερωτήματα 2. Ένα αρχείο txt με το όνομα και ΑΜ σας και, αν είναι απαραίτητο, οδηγίες και διευκρινίσεις για την υλοποίησή σας. Ως ημερομηνία παράδοσης της εργασίας ορίζεται η 14 η Ιανουαρίου 2013. Καλή επιτυχία!!!