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

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

Αντικειμενοστρεφής Προγραμματισμός

2 η Εργαστηριακή Άσκηση

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

Δημιουργία μιας εφαρμογής Java με το NetBeans

Βρίγκας Μιχαήλ Α.Μ.744 Μπράχος Χ. Ευάγγελος Α.Μ.795

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

ΕΡΓΑΣΙΑ 2 - MOODLE ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ. Ακ. Έτος ΔΙΔΑΣΚΩΝ: Π. Εφραιμίδης. Υπεύθυνος εργαστηρίου: Α. Κουτσιαμάνης

FROM TESTOTA.REGISTRY

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

SELECT DISTINCT EIDOS_EISERXOMENOY, COUNT (EIDOS_EISERXOMENOY) AS "Αριθµός" FROM TESTOTA.REGISTRY GROUP BY EIDOS_EISERXOMENOY ORDER BY "Αριθµός" DESC

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

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

NetBeans και σχετικά προγράμματα. Κακαρόντζας Γεώργιος Κέντρο Αριστείας Ανοιχτού Λογισμικού ΑΠΘ 1ο Θερινό Σχολείο Κώδικα

4 η Εργαστηριακή Άσκηση

ηµιουργία Αρχείου Πρότζεκτ (.qpf)

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

ΣΧΕΔΙΑΣΜΟΣ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ ΕΡΓΑΣΤΗΡΙΟ 2

Συνοπτικός Οδηγός Χρήσης του MySQL Workbench

Εργαστήριο Java. Διδάσκουσα: Εργαστηριακοί Συνεργάτες:

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

Εργασία για το Facility Game Μάθημα: Δομές Δεδομένων Σωτήρης Γυφτόπουλος

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

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

ΕΣΔ 232: ΟΡΓΑΝΩΣΗ ΔΕΔΟΜΕΝΩΝ ΣΤΗ ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ. Ακαδημαϊκό Έτος , Εαρινό Εξάμηνο. Εργαστηριακή Άσκηση 4 7/02/2012

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ.

ΟΝΟΜΑΤΕΠΩΝΥΜΟ : Αντικείμενα: Βάσεις δεδομένων, σχέσεις μεταξύ πινάκων, ερωτήματα, φόρμες και αναφορές.

Τμήμα Πληροφορικής ΑΠΘ

Hase οδηγίες χρήσης.

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

Δομές Δεδομένων. Σημειώσεις από το εργαστήριο για τον χειρισμό του προγράμματος Eclipse. 5ο εξάμηνο. v1.0

Βάσεις Δεδομένων. Ενότητα 7.1: Structured Query Language - 1 ο Μέρος. Αθανάσιος Σπυριδάκος Τμήμα Διοίκησης Επιχειρήσεων

Hase οδηγίες χρήσης.

Οδηγίες εγκατάστασης και χρήσης Java σε προσωπικό υπολογιστή

ΕΝΗΜΕΡΩΣΗ ΔΕΔΟΜΕΝΩΝ. UPDATE products SET prod_fpa=19 WHERE prod_fpa=23; SELECT prod_descr,purchase,purchase_date FROM products WHERE prod_fpa=9;

Οδηγίες εγκατάστασης. Εκπαιδευτικού Λογισμικού του Γυμνασίου

2. Εισαγωγή Δεδομένων σε Σχεσιακή Βάση Δεδομένων

ΔΙΑΔΙΚΑΣΙA ΜΕΤΑΦΟΡΑΣ ΥΛΙΚΟΥ ΜΑΘΗΜΑΤΟΣ ΑΠΟ BLACKBOARD VISTA ΣΕ MOODLE

Διαδικτυακές Εφαρμογές Ενότητα 7: Προσπέλαση ΒΔ με το JDBC

1. Άνοιγμα Και Κλείσιμο Της Εφαρμογής Φυλλομετρητή Ιστού (Internet Explorer)

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι. Ενότητα 7β: SQL (Πρακτική Εξάσκηση 1) Ευαγγελίδης Γεώργιος. Τμήμα Εφαρμοσμένης Πληροφορικής ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι

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

Τεχνολογία Διοίκησης Επιχειρησιακών Διαδικασιών

Διαδικασία εγκατάστασης και ρύθμισης AUA-VPN για Windows XP/Vista/7/8

ΔΙΑΔΙΚΑΣΙA ΜΕΤΑΦΟΡΑΣ ΥΛΙΚΟΥ ΜΑΘΗΜΑΤΟΣ ΑΠΟ BLACKBOARD VISTA ΣΕ OPEN ECLASS

Τεχνολογία Πολιτισμικού Λογισμικού

Συστήματα Παράλληλης και Κατανεμημένης Επεξεργασίας

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

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

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

Οδηγίες Εργασίας 1 Facility-Game

Οδηγίες για την εγκατάσταση του πακέτου Cygwin

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

PROJECT ΕΡΓΑΣΤΗΡΙΩΝ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ ΙΙ. Φοιτητής:... (ΑΕΜ: ) ΣΕΡΡΕΣ, Ιανουάριος 2010

Κεφάλαιο 10 Άλλες Πράξεις Θεωρίας Συνόλων

CYGWIN Οδηγίες Χρήσης (Συγγραφέας: Γιώργος ούκας)

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

Εργαστήριο Ανάπτυξης Εφαρμογών Βάσεων Δεδομένων. Εξάμηνο 7 ο

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

Οδηγίες εγκατάστασης και χρήσης του Quartus

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

Η Βίβλος σχετικά με το JDBC. Περιέχει τρία βασικά tutorials στα οποία θα βασιστεί το μάθημα και περιγράφει όλες τις τάξεις και τις μεθόδους που

Εργαστήριο Μελέτης και Σχεδίασης με Χρήση Η/Υ Εγχειρίδιο για την χρήση του SIEMENS NX ΣΤΑΥΡΟΣ ΙΩΑΝΝΗΣ ΓΟΡΑΝΙΤΗΣ

Βάσεις Δεδομένων Ι SQL Μέρος 1 ο. Φώτης Κόκκορας (MSc/PhD) Τμήμα Μηχανικών Πληροφορικής ΤΕ

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

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

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

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

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

Βάσεις Δεδομένων ΗγλώσσαSQL (Structured Query Language)

Βιοϊατρική τεχνολογία

Περιγραφή της εργασίας

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

Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010

Τεχνολογία Διοίκησης Επιχειρησιακών Διαδικασιών

Βάσεις Δεδομένων Η γλώσσα SQL (Structured Query Language) Εισαγωγή στην SQL (2) Ιστορικά Στοιχεία. SQL - Structured Query Language (1)

SingularLogic Σεπτέμβριος 2014

4. ΔΗΜΙΟΥΡΓΙΑ ΜΟΝΤΕΛΟΥ ΠΟΛΥΔΙΑΣΤΑΤΗΣ ΑΝΑΛΥΣΗΣ

ΗΜΥ211 Εργαστήριο Ψηφιακών Συστημάτων

Οδηγίες εγκατάστασης. Gemalto IDClassic 340 (v1.0).

1. ΑΝΟΙΞΤΕ ΤΟΝ ΠΙΝΑΚΑ CUSTOMER ΚΑΙ ΣΤΟ ΜΕΝΟΥ ΕΠΙΛΕΞΤΕ

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

Άσκηση Access 1. Να δημιουργηθεί μία βάση δεδομένων για ένα ξενοδοχείο με το όνομα Hotel. Πατάμε το εικονίδιο Κενή βάση δεδομένων επάνω δεξιά:

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

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


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

Τμήμα Πληροφορικής ΑΠΘ

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

Αθήνα, Απρίλιος 2018 ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΥΠΟΥΡΓΕΙΟ ΟΙΚΟΝΟΜΙΚΩΝ

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

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

Ερωτήσεις και απαντήσεις για το e-tutoring 1

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

MEGASOFT ΤΜΗΜΑ ΤΕΧΝΙΚΗΣ ΥΠΟΣΤΗΡΙΞΗΣ. Οδηγός Σύνδεσης Ταμειακών Μηχανών Online

Tο περιβάλλον Code::Blocks

Κεφάλαιο 9 Συναθροίσεις

GROUP BY, HAVING, COUNT, MIN, MAX, SUM, AVG, ROLLUP.

Transcript:

Πανεπιστήμιο Πειραιώς Τμήμα Ψηφιακών Συστημάτων Σχεδιασμός Βάσεων Δεδομένων Εργαστήριο 5 Δρ. Βασιλική Κούφη

Περιεχόμενα Ανάπτυξη προγράμματος Java Σύνδεση με βάση δεδομένων Άσκησης 2 (Εργαστηριακά Μαθήματα 2 & 3) Εκτέλεση ερωτημάτων SQL στη Βάση Δεδομένων Δημιουργία Βάσης Δεδομένων Χρήση μοντέλου E-R από την Άσκηση 3 (Εργαστηριακά Μαθήματα 2 & 3) Εκτέλεση SQL ερωτημάτων στη βάση δεδομένων

Σύνδεση στη ΒΔ με Java 1. Η java παρέχει κάποιες κλάσεις και APIs με τη βοήθεια των οποίων μπορεί να γίνει εύκολη χρήση μιας βάσης δεδομένων - Σύνδεση αρχείου Java με βάση δεδομένων (με χρήση MySQL driver) - Διαχείριση βάσης δεδομένων (insert, query, update) 2. Απαραίτητο λογισμικό: Eclipse for Java Developers JDBC Driver της MySQL (Είναι αναρτημένο στον Εύδοξο)

Σύνδεση στη ΒΔ με Java Ανοίγουμε το Eclipse και δημιουργούμε ένα Java Project επιλέγοντας File > New > Java Project

Σύνδεση στη ΒΔ με Java Στο παράθυρο που εμφανίζεται ορίζουμε ως Project Name το testmysqlconn και πατάμε Finish.

Σύνδεση στη ΒΔ με Java Από το φάκελο Έγγραφα > Labs > Εργαστηριακό Μάθημα 5 > Αρχεία υλοποίησης για σύνδεση με ΒΔ στον Εύδοξο κατεβάζοθμε τα ακόλουθα: Το πρόγραμμα Java για σύνδεση με τη Βάση Δεδομένων της Άσκησης 2 του Εργαστηριακού Μαθήματος 2 Το αρχείο MySQL JDBC Driver Αντιγράφουμε το αρχείο java στο folder src του project που δημιουργήσαμε. Κάνουμε extract στο Desktop τον JDBC Driver της MySQL

Σύνδεση στη ΒΔ με Java Στον Package Explorer του Eclipse κάνουμε δεξί κλικ και επιλέγουμε Build Path > Configure Build Path.

Σύνδεση στη ΒΔ με Java Στο παράθυρο που εμφανίζεται κάνουμε κλικ στο Add External JARs.

Σύνδεση στη ΒΔ με Java Στο παράθυρο που εμφανίζεται εντοπίζουμε και επιλέγουμε το αρχείο mysql-connector-java-5.1.41-bin.jar το οποίο βρίσκεται μέσα στο φάκελο που προήλθε απο την αποσυμπίεση του JDBC Connector (το κάναμε extract πριν στο Desktop).

Εφαρμογή Java Ανάκτηση Δεδομένων από τη ΒΔ Τρέχουμε το πρόγραμμα και παίρνουμε ως Output

Δημιουργία ΒΔ Άσκησης 3 Κατεβάζουμε από τον Εύδοξο: Τα DDL aρχεία για τη δημιουργία της Βάσης Δεδομένων (θα χρειαστούμε μόνο το oracle-data-modeler-converted-to-mysql.ddl) Τις εντολές SQL για Βάση Δεδομένων Άσκησης 3 (Εργαστηριακά Μαθήματα 2 & 3) (αρχείο data-insertion.txt) Δημιουργούμε μια κενή βάση δεδομένων στην MySQL, την BookingDB Στην καρτέλα SQL της BookinDB εκτελούμε: Όλες τις εντολές SQL που βρίσκονται μέσα στο αρχείο oracle-datamodeler-converted-to-mysql.ddl το οποίο κατεβάσαμε προηγουμένως. Όλες τις εντολές SQL που βρίσκονται μέσα στο αρχείο datainsertion.txt το οποίο κατεβάσαμε προηγουμένως.

Εκτέλεση SQL ερωτημάτων στη Βάση Δεδομένων BookingDB 1. Εμφάνιση αλυσίδας ξενοδοχείων 2. Εμφάνιση όλων των δωματίων ανά ξενοδοχείο 3. Εμφάνιση όλων των δωματίων ανά ξενοδοχείο με τα amenities που διαθέτει το καθένα 4. Εμφάνιση όλων των δωματίων που έχουν τιμή μεταξύ 80 και 200 ευρώ 5. Εμφάνιση μέσης τιμής δωματίων της ίδιας χωρητικότητας 6. Εμφάνιση μέσης τιμής δωματίων της ίδιας χωρητικότητας ανά ξενοδοχείο 7. Εμφάνιση όλων των στοιχείων των κρατήσεων ανά πελάτη 8. Εμφάνιση όλων των στοιχείων των κρατήσεων ανά πελάτη οι οποίες πραγματοποιήθηκαν από την 1-1-2017 έως και τις 28-2- 2017

Εκτέλεση SQL ερωτημάτων στη Βάση Δεδομένων BookingDB 1. select * from HOTEL 2. select HOTEL.HOTEL_NAME as hotel, ROOM.ROOM_NUMBER, ROOM.ROOM as room,, ROOM.ROOM_CAPACITY as capacity, ROOM.ROOM_PRICE as price from ROOM, HOTEL where ROOM.HOTEL_HOTEL_UNIT=HOTEL.HOTEL_UNIT order by HOTEL.HOTEL_UNIT 3. select HOTEL.HOTEL_NAME as hotel, ROOM.ROOM_NUMBER as room, ROOM.ROOM_CAPACITY as capacity, ROOM.ROOM_PRICE as price, AMENITY.AMENITY_DESCR as amenity from ROOM, HOTEL, AMENITY, ROOM_AMENITY where ROOM.HOTEL_HOTEL_UNIT=HOTEL.HOTEL_UNIT and ROOM.ROOM_NUMBER= ROOM_AMENITY.ROOM_ROOM_NUMBER and ROOM.HOTEL_HOTEL_UNIT=ROOM_AMENITY.ROOM_HOTEL_HOTEL_UNIT and ROOM_AMENITY.AMENITY_AMENITY_CODE=AMENITY.AMENITY_CODE order by HOTEL.HOTEL_UNIT, ROOM.ROOM_NUMBER

Εκτέλεση SQL ερωτημάτων στη Βάση Δεδομένων BookingDB 4. select count(*) from room where room_price between 80 and 200 5. select ROOM.ROOM_CAPACITY as capacity, AVG(ROOM.ROOM_PRICE) as avgprice from HOTEL,ROOM group by capacity 6. select HOTEL.HOTEL_NAME as hotel, ROOM.ROOM_CAPACITY as capacity, AVG(ROOM.ROOM_PRICE) as avgprice from HOTEL,ROOM where ROOM.HOTEL_HOTEL_UNIT=HOTEL.HOTEL_UNIT group by hotel, capacity

Εκτέλεση SQL ερωτημάτων στη Βάση Δεδομένων BookingDB 7. select HOTEL.HOTEL_NAME, ROOM.ROOM_NUMBER, ROOM.ROOM_CAPACITY, BOOKING.BOOKING_ARRIVAL_DATE, BOOKING.BOOKING_DEP_DATE, CUSTOMER.CUSTOMER_NAME, CUSTOMER.CUSTOMER_SURNAME, CUSTOMER.CUSTOMER_TEL, CUSTOMER.CUSTOMER_ADT, CUSTOMER.CUSTOMER_PASSPORT from HOTEL,ROOM,BOOKING,CUSTOMER where BOOKING.ROOM_HOTEL_HOTEL_UNIT=ROOM.HOTEL_HOTEL_UNIT and ROOM.HOTEL_HOTEL_UNIT=HOTEL.HOTEL_UNIT and BOOKING.ROOM_ROOM_NUMBER=ROOM.ROOM_NUMBER and BOOKING.CUSTOMER_CUSTOMER_CODE=CUSTOMER.CUSTOMER_CODE order by CUSTOMER.CUSTOMER_CODE

Εκτέλεση SQL ερωτημάτων στη Βάση Δεδομένων BookingDB 8. select HOTEL.HOTEL_NAME, ROOM.ROOM_NUMBER, ROOM.ROOM_CAPACITY, BOOKING.BOOKING_ARRIVAL_DATE, BOOKING.BOOKING_DEP_DATE, CUSTOMER.CUSTOMER_NAME, CUSTOMER.CUSTOMER_SURNAME, CUSTOMER.CUSTOMER_TEL, CUSTOMER.CUSTOMER_ADT, CUSTOMER.CUSTOMER_PASSPORT from HOTEL,ROOM,BOOKING,CUSTOMER where BOOKING.ROOM_HOTEL_HOTEL_UNIT=ROOM.HOTEL_HOTEL_UNIT and ROOM.HOTEL_HOTEL_UNIT=HOTEL.HOTEL_UNIT and BOOKING.ROOM_ROOM_NUMBER=ROOM.ROOM_NUMBER and BOOKING.CUSTOMER_CUSTOMER_CODE=CUSTOMER.CUSTOMER_CODE and BOOKING.BOOKING_ARRIVAL_DATE between '2017-1-1' and '2017-2-28' order by CUSTOMER.CUSTOMER_CODE