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

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ"

Transcript

1 ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ

2 Τα μεταδεδομένα είναι δεδομένα για τα δεδομένα (data about data). Περιγράφουν τη δομή μίας βάσης ή ενός συγκεκριμένου τύπου δεδομένων όπως ενός αντικειμένου, ενός πίνακα. Δρ. Κεραμόπουλος Ευκλείδης 2

3 ResultSetMetaData προσφέρει πληροφορίες σχετικά με τις στήλες ενός αντικειμένου ResultSet DatabaseMetaData προσφέρει πληροφορίες σχετικά με τη δομή μιας βάσης δεδομένων. ParameterMetaData προσφέρει πληροφορίες σχετικά με τις παραμέτρους ενός αντικειμένου PreparedStatement Δρ. Κεραμόπουλος Ευκλείδης 3

4

5 Το πρώτο βήμα για να έχουμε πρόσβαση σε ResultSet Metadata είναι να ορίσουμε το αντίστοιχο αντικείμενο. Παράδειγμα: Έστω con ένα αντικείμενο της τάξης Connection το οποίο έχει δημιουργηθεί για μία σύνδεση με μία πηγή δεδομένων String Select_Query = Select * from Sailor Statement stmt = con.createstatement(); ResultSet rs = stmt.executequery(select_query); ResultSetMetaData rsmd = rs.getmetadata(); Δρ. Κεραμόπουλος Ευκλείδης 5

6 Μέθοδος getcolumncount Επιστρέφει τον αριθμό των στηλών που περιέχει το resultset. int getcolumncount() throws SQLException Παράδειγμα int numberofcolumns = rsmd.getcolumncount(); System.out.println("Number of columns: "+numberofcolumns); Number of columns: 4 Δρ. Κεραμόπουλος Ευκλείδης 6

7 Μέθοδος getcolumnlabel Επιστρέφει τα ονόματα των στηλών που περιέχει το resultset. String getcolumnlabel(int column) throws SQLException Παράδειγμα for (int i = 1; i<= numberofcolumns; i++){ String columnname = rsmd.getcolumnlabel(i); System.out.println(columnName); } sid sname rating age Δρ. Κεραμόπουλος Ευκλείδης 7

8 Μέθοδος getcolumntype Επιστρέφει τον αντίστοιχο JDBC τύπο ενός SQL τύπου μίας συγκεκριμένης στήλης. int getcolumntype(int column) throws SQLException Παράδειγμα int jdbctype = rsmd.getcolumntype(1); int jdbctype = rsmd.getcolumntype(2); type 4 type 7 Δρ. Κεραμόπουλος Ευκλείδης 8

9 Μέθοδος getcolumntypename Επιστρέφει τον SQL τύπο που αντιστοιχεί σε έναν JDBC τύπο. Το αλφαριθμητικό που επιστρέφεται είναι διαφορετικό ανάλογα με το DBMS. String getcolumntypename(int column) throws SQLException Παράδειγμα String name = rsmd.getcolumntypename(1); String name = rsmd.getcolumntypename(2); Int4 float4 Δρ. Κεραμόπουλος Ευκλείδης 9

10 Παράδειγμα 1. ResultSet rs = statement.executequery("select * from Sailors"); 2. ResultSetMetaData rsmd = rs.getmetadata(); 3. int numberofcolumns = rsmd.getcolumncount(); 4. System.out.print("Number of columns: " + numberofcolumns); 5. for (int i=1; i <= numberofcolumns; i++) { 6. String label = rsmd.getcolumnlabel(i); 7. int jdbctype = rsmd.getcolumntype(i); 8. String name = rsmd.getcolumntypename(i); 9. System.out.print("Column "+i+ " " + label + " is JDBC type "); 10. System.out.println(jdbcType + ", which is DBMS type " + name); 11. } Number of columns: 4 Column: 1 sid is JDBC type 4, which is DBMS type int4 Column: 2 sname is JDBC type 1, which is DBMS type char Column: 3 rating is JDBC type 4, which is DBMS type int4 Column: 4 age is JDBC type 7, which is DBMS type float4 Δρ. Κεραμόπουλος Ευκλείδης 10

11 1. import java.sql.*; 2. public class Meta1 { ΠΑΡΑΔΕΙΓΜΑ 1ο 3. static String driverclassname = "org.postgresql.driver" ; 4. static String url = "jdbc:postgresql://aetos.it.teithe.gr:5432/db2lab1" ; 5. static Connection dbconnection = null; 6. static String username = "db090"; 7. static String passwd = "69L14"; 8. static Statement statement = null; 9. static ResultSet rs = null; 10. public static void main (String[] argv) throws Exception 11. { 12. Class.forName (driverclassname); 13. dbconnection = DriverManager.getConnection (url, username, passwd); 14. statement = dbconnection.createstatement(); 15. ResultSet rs = statement.executequery("select * from Sailors"); 16. ResultSetMetaData rsmd = rs.getmetadata(); Δρ. Κεραμόπουλος Ευκλείδης 11

12 17. int numberofcolumns = rsmd.getcolumncount(); 18. System.out.println("Column of columns: "+numberofcolumns); 19. int j = 0; 20. for (int i = 1; i<= numberofcolumns; i++){ 21. String columnname = rsmd.getcolumnlabel(i); 22. System.out.print(columnName+ " "); 23. } Δρ. Κεραμόπουλος Ευκλείδης 12

13 24. System.out.println(""); 25. String columnvalue; 26. while (rs.next()) { 27. for (int i = 1; i<= numberofcolumns; i++) { 28. columnvalue = rs.getstring(i); 29. System.out.print(columnvalue + " "); 30. j = j + 1; 31. if (j==4) { 32. System.out.println(""); 33. j = 0; 34. } 35. } 36. } 37. statement.close(); 38. dbconnection.close(); 39. } 40. } Δρ. Κεραμόπουλος Ευκλείδης 13

14 Number of columns: 4 sid sname rating age 22 Dustin Brutus Lubber Andy Rusty Horatio Zorba Horatio Art Bob Δρ. Κεραμόπουλος Ευκλείδης 14

15 1. import java.sql.*; 2. public class Meta1 { ΠΑΡΑΔΕΙΓΜΑ 2ο 3. static String driverclassname = "org.postgresql.driver" ; 4. static String url = "jdbc:postgresql://aetos.it.teithe.gr:5432/db2lab1" ; 5. static Connection dbconnection = null; 6. static String username = "db090"; 7. static String passwd = "69L14"; 8. static Statement statement = null; 9. static ResultSet rs = null; 10. public static void main (String[] argv) throws Exception 11. { 12. Class.forName (driverclassname); 13. dbconnection = DriverManager.getConnection (url, username, passwd); 14. statement = dbconnection.createstatement(); 15. ResultSet rs = statement.executequery("select * from Sailors"); 16. ResultSetMetaData rsmd = rs.getmetadata(); Δρ. Κεραμόπουλος Ευκλείδης 15

16 17. int numberofcolumns = rsmd.getcolumncount(); 18. for (int i = 1; i <= numberofcolumns; i++) { ΠΑΡΑΔΕΙΓΜΑ 2ο 19. String colname = rsmd.getcolumnname(i); 20. String typename = rsmd.getcolumntypename(i); 21. System.out.println("Information for column " + colname); 22. System.out.println(" DBMS SQL name for type is " + typename); 23. } 24. statement.close(); 25. dbconnection.close(); 26. } 27. } Δρ. Κεραμόπουλος Ευκλείδης 16

17 Information for column sid DBMS SQL name for type is int4 Information for column sname DBMS SQL name for type is bpchar Information for column rating DBMS SQL name for type is int4 Information for column age DBMS SQL name for type is float4 Δρ. Κεραμόπουλος Ευκλείδης 17

18

19 Το πρώτο βήμα για να έχουμε πρόσβαση σε Database Metadata είναι να ορίσουμε το αντίστοιχο αντικείμενο. Παράδειγμα: DatabaseMetaData dbmd = con.getmetadata(); con μεταβλητή που δημιουργήθηκε από Connection αντικείμενο Δρ. Κεραμόπουλος Ευκλείδης 19

20 Μέθοδος getcatalogs Επιστρέφει το όνομα των catalogs μίας Βάσης Δεδομένων ResultSet getcatalogs() throws SQLException Tο ResultSet επιστρέφει μία στήλη: 1. TABLE_CAT Περιέχει το όνομα του catalog Δρ. Κεραμόπουλος Ευκλείδης 20

21 Μέθοδος getschemas Επιστρέφει το όνομα του σχήματος ResultSet getschemas() throws SQLException Tο ResultSet επιστρέφει δύο στήλες. Από αυτές ενδιαφέρον έχει η: 1. TABLE_SCHEM Περιέχει το όνομα του σχήματος Δρ. Κεραμόπουλος Ευκλείδης 21

22 Μέθοδος getdatabaseproductname Επιστρέφει το όνομα του dbms String getdatabaseproductname() throws SQLException Δρ. Κεραμόπουλος Ευκλείδης 22

23 1. import java.sql.*; 2. public class Meta2 { 3. static String driverclassname = "org.postgresql.driver" ; 4. static String url = "jdbc:postgresql://aetos.it.teithe.gr:5432/db2lab1" ; 5. static Connection dbconnection = null; 6. static String username = "db090"; 7. static String passwd = "69L14"; 8. static Statement statement = null; 9. static DatabaseMetaData dbmd = null; 10. public static void main (String[] argv) throws Exception 11. { 12. Class.forName (driverclassname); 13. dbconnection = DriverManager.getConnection (url, username, passwd); 14. statement = dbconnection.createstatement(); 15. dbmd = dbconnection.getmetadata(); 16. String dbmsname = dbmd.getdatabaseproductname(); Δρ. Κεραμόπουλος Ευκλείδης 23

24 17. ResultSet rescat = dbmd.getcatalogs(); 18. System.out.println("List of databases: "); 19. while (rescat.next()) { 20. System.out.println(" "+rescat.getstring("table_cat")); 21. ResultSet scrs = dbmd.getschemas(); 22. while (scrs.next()) { 23. String s = scrs.getstring(1); 24. System.out.println("Schema name = " + s); 25. } 26. } 27. statement.close(); 28. dbconnection.close(); 29. } 30. } Δρ. Κεραμόπουλος Ευκλείδης 24

25 List of databases: db2lab1 Schema name = db061 Schema name = db062 Schema name = db063 Schema name = db064 Schema name = db065 Schema name = db066 Schema name = db067 Schema name = db068 Schema name = db069 Schema name = db070 Schema name = db071 Schema name = db072 Schema name = db073 Schema name = db074 Schema name = db075 Schema name = db076 Schema name = db077 Schema name = db078 Schema name = db079 Schema name = db080 Schema name = db081 Schema name = db082 Schema name = db083 Schema name = db084 Schema name = db085 Schema name = db086 Schema name = db087 Schema name = db088 Schema name = db089 Schema name = db090 Schema name = information_schema Schema name = pg_catalog Schema name = pg_toast_temp_1 Schema name = public BUILD SUCCESSFUL (total time: 1 second) Δρ. Κεραμόπουλος Ευκλείδης 25

26 Μέθοδος gettabletypes Επιστρέφει τον τύπο ενός πίνακα. ResultSet gettabletypes() throws SQLException Κάθε γραμμή του ResultSet περιέχει ένα String με πιθανές τιμές: "TABLE", "VIEW", "SYSTEM TABLE", "GLOBAL TEMPORARY", "LOCAL TEMPORARY", "ALIAS", "SYNONYM" Το όνομα της στήλης που περιέχει τις τιμές είναι TABLE_TYPE Δρ. Κεραμόπουλος Ευκλείδης 26

27 ΠΑΡΑΔΕΙΓΜΑ String dbmsname = dbmd.getdatabaseproductname(); rs = dbmd.gettabletypes(); System.out.print("The following types of tables are "); System.out.println("available in " + dbmsname + ": "); while (rs.next()) { String tabletype = rs.getstring("table_type"); System.out.println(" " + tabletype); } ΑΠΟΤΕΛΕΣΜΑ The following types of tables are available in PostgreSQL: INDEX SEQUENCE SYSTEM INDEX SYSTEM TABLE SYSTEM TOAST INDEX SYSTEM TOAST TABLE SYSTEM VIEW TABLE TEMPORARY INDEX TEMPORARY TABLE VIEW Δρ. Κεραμόπουλος Ευκλείδης 27

28 Μέθοδος gettables επιστρέφει τα ονόματα των πινάκων ResultSet gettables(string catalog, String schemapattern, String tablenamepattern, String types[]) throws SQLException Παράδειγμα String [] tabletypes = { "TABLE" }; rs = dbmd.gettables("%", "db090", "%", tabletypes); Catalog Είναι ένα String που αναφέρεται στο catalog. "" επιστρέφει πίνακες χωρίς catalog; Το null υποδεικνύει ότι δεν θα χρησιμοποιηθεί το πρότυπο όνομα του catalog ως φίλτρο. schemapattern Είναι ένα String που αναφέρεται στο όνομα του schema; επιστρέφει πίνακες χωρίς schema; null υποδεικνύει ότι δεν θα χρησιμοποιηθεί το πρότυπο όνομα του schema ως φίλτρο, π.χ. DB320 tablenamepattern Ένα String που παρουσιάζει ένα πρότυπο όνομα πίνακα types[] Μία λίστα από String που παρουσιάζουν τους διαθέσιμους τύπους των πινάκων. Περιλαμβάνει τις τιμές: "TABLE", "SYSTEM TABLE", "VIEW", "GLOBAL TEMPORARY", "LOCAL TEMPORARY", "ALIAS", και "SYNONYM". Δρ. Κεραμόπουλος Ευκλείδης 28

29 Η μέθοδος gettables επιστρέφει 10 στήλες. Οι σημαντικότερες: 1. TABLE_CAT: Ο catalog του πίνακα 2. TABLE_SCHEMA: Το σχήμα του πίνακα 3. TABLE_NAME: το όνομα του πίνακα 4. TABLE_TYPE: Ο τύπος του πίνακα. 5. REMARKS: Η περιγραφή του πίνακα Δρ. Κεραμόπουλος Ευκλείδης 29

30 1. import java.sql.*; 2. public class Meta4 { 3. static String driverclassname = "org.postgresql.driver" ; 4. static String url = "jdbc:postgresql://aetos.it.teithe.gr:5432/db2lab1" ; 5. static Connection dbconnection = null; 6. static String username = "db090"; 7. static String passwd = "69L14"; 8. static Statement statement = null; 9. static DatabaseMetaData dbmd = null; 10. static ResultSet rs = null; 11. public static void main (String[] argv) throws Exception 12. { 13. Class.forName (driverclassname); 14. dbconnection = DriverManager.getConnection (url, username, passwd); 15. statement = dbconnection.createstatement(); 16. dbmd = dbconnection.getmetadata(); Δρ. Κεραμόπουλος Ευκλείδης 30

31 17. rs = dbmd.gettabletypes(); 18. String [] tabletypes = { "TABLE" }; 19. rs = dbmd.gettables("%", username, "%", tabletypes); 20. while (rs.next()) { 21. String tablename = rs.getstring("table_name"); 22. String tabletype = rs.getstring("table_type"); 23. System.out.println(tableType+ " " + tablename + " "); 24. } 25. statement.close(); 26. dbconnection.close(); 27. } 28. } Αποτέλεσμα TABLE boats TABLE reserves TABLE sailors Δρ. Κεραμόπουλος Ευκλείδης 31

32 getprimarykeys επιστρέφει πληροφορίες σχετικές με το κύριο κλειδί ενός πίνακα. Δήλωση ResultSet getprimarykeys(string catalog, String schema, String table) throws SQLException Παράδειγμα: dbmd.getprimarykeys(null, "dbo90", tablename) Catalog: Είναι ένα String που αναφέρεται στο catalog. "" επιστρέφει πίνακες χωρίς catalog. Το null υποδεικνύει ότι δεν θα χρησιμοποιηθεί το πρότυπο όνομα του catalog ως φίλτρο. Schema: Είναι ένα String που αναφέρεται στο όνομα του schema; επιστρέφει πίνακες χωρίς schema; null υποδεικνύει ότι δεν θα χρησιμοποιηθεί το πρότυπο όνομα του schema ως φίλτρο Table: Είναι ένα String που αναφέρεται στον πίνακα που περιέχει το κύριο κλειδί. Δρ. Κεραμόπουλος Ευκλείδης 32

33 Επιστρέφει ένα αντικείμενο Resultset που έχει 6 στήλες 1. TABLE_CAT το όνομα του catalog (μπορεί να πάρει την τιμή null) 2. TABLE_SCHEM το όνομα του σχήματος (μπορεί να πάρει την τιμή null) 3. TABLE_NAME το όνομα του πίνακα 4. COLUMN_NAME το όνομα της στήλης 5. KEY_SEQ η σειρά στο σύνθετο κλειδί 6. PK_NAME το όνομα του κυρίου κλειδιού (μπορεί να πάρει την τιμή null) Δρ. Κεραμόπουλος Ευκλείδης 33

34 getimportedkeys επιστρέφει πληροφορίες σχετικές με το ξένο κλειδί ενός πίνακα. Δήλωση ResultSet getimportedkeys(string catalog, String schema, String table) throws SQLException Παράδειγμα: dbmd.getimportedkeys("", "db090",tablename); Catalog: Είναι ένα String που αναφέρεται στο catalog. "" επιστρέφει πίνακες χωρίς catalog; Το null υποδεικνύει ότι δεν θα χρησιμοποιηθεί το πρότυπο όνομα του catalog ως φίλτρο Schema: Είναι ένα String που αναφέρεται στο όνομα του schema; επιστρέφει πίνακες χωρίς schema; null υποδεικνύει ότι δεν θα χρησιμοποιηθεί το πρότυπο όνομα του schema ως φίλτρο Table: Είναι ένα String που αναφέρεται στον πίνακα που περιέχει το ξένο κλειδί Δρ. Κεραμόπουλος Ευκλείδης 34

35 Επιστρέφει ένα αντικείμενο Resultset που έχει 14 στήλες. Οι σημαντικότερες είναι: 1. PKTABLE_NAME: το όνομα του πίνακα που δείχνει το ξένο κλειδί 2. PKCOLUMN_NAME: το όνομα της στήλης του κυρίου κλειδιού, στον πίνακα που δείχνει το ξένο κλειδί, που συνδέεται το ξένο κλειδί 3. FKTABLE_NAME: το όνομα του πίνακα που περιέχει το ξένο κλειδί 4. FKCOLUMN_NAME: το όνομα της στήλης του ξένου κλειδιού 5. UPDATE_RULE (importedkeynoaction, importedkeycascade, importedkeysetnull, importedkeysetdefault, importedkeyrestrict) 6. DELETE_RULE (importedkeynoaction, importedkeycascade, importedkeysetnull, importedkeysetdefault, importedkeyrestrict) Δρ. Κεραμόπουλος Ευκλείδης 35

36 Μέθοδος getcolumns Επιστρέφει τα ονόματα των στηλών ResultSet getcolumns(string catalog, String schemapattern, String tablenamepattern, String columnnamepattern) Παράδειγμα: dbmd.getcolumns("%", "db090", tablename, "%"); Catalog: Είναι ένα String που αναφέρεται στο catalog. "" επιστρέφει στήλες πινάκων χωρίς catalog; Το null υποδεικνύει ότι δεν θα χρησιμοποιηθεί το πρότυπο όνομα του catalog ως φίλτρο schemapattern : Είναι ένα String που αναφέρεται σε ένα πρότυπο όνομα σχήματος; "" επιστρέφει στήλες πινάκων χωρίς schema Το null υποδεικνύει ότι δεν θα χρησιμοποιηθεί το πρότυπο όνομα του schema ως φίλτρο tablenamepattern : Είναι ένα String που αναφέρεται στο πρότυπο του ονόματος του πίνακα που περιέχονται οι στήλες columnnamepattern: : Είναι ένα String που αναφέρεται σε τυχόν πρότυπο όνομα στηλών. Δρ. Κεραμόπουλος Ευκλείδης 36

37 Επιστρέφει ένα αντικείμενο Resultset που έχει 22 στήλες. Οι σημαντικότερες εξηγούνται παρακάτω: 1. TABLE_CAT το όνομα του catalog 2. TABLE_SCHEM το όνομα του σχήματος 3. TABLE_NAME το όνομα του πίνακα που περιέχει τις στήλες 4. COLUMN_NAME το όνομα της στήλης 5. DATA_TYPE το όνομα του JDBC τύπου της στήλης 6. TYPE_NAME το όνομα του SQL τύπου της στήλης 7. COLUMN_SIZE το μέγεθος του τύπου 8. DECIMAL_DIGITS δεκαδικά ψηφία 9. NULLABLE 0 αν είναι NOT NULL, 1 αν είναι NULL Δρ. Κεραμόπουλος Ευκλείδης 37

38 1. import java.sql.*; 2. public class Meta5 { 3. static String driverclassname = "org.postgresql.driver" ; 4. static String url = "jdbc:postgresql://aetos.it.teithe.gr:5432/db2lab1" ; 5. static Connection dbconnection = null; 6. static String username = "db090"; 7. static String passwd = "69L14"; 8. static Statement statement = null; 9. static DatabaseMetaData dbmd = null; 10. static ResultSet rs = null; 11. static ResultSetMetaData rsmd = null; public static void main (String[] argv) throws Exception 15. { 16. Class.forName (driverclassname); 17. dbconnection = DriverManager.getConnection (url, username, passwd); 18. statement = dbconnection.createstatement(); 19. dbmd = dbconnection.getmetadata(); 20. rs = dbmd.gettabletypes(); 21. String [] tabletypes = { "TABLE" }; 22. rs = dbmd.gettables("%", "db090","%", tabletypes); Δρ. Κεραμόπουλος Ευκλείδης 38

39 23. while (rs.next()) { 24. String tablename = rs.getstring("table_name"); 25. String tabletype = rs.getstring("table_type"); 26. System.out.println(tableName+ " " + tabletype + " "); 27. ResultSet pkrs = dbmd.getprimarykeys(null, "db090", tablename); 28. System.out.println("Primary keys"); 29. while (pkrs.next()) { 30. String primarykeyname = pkrs.getstring("column_name"); 31. System.out.print(primarykeyName+ " "); 32. } 33. System.out.println(); 34. ResultSet colrs = dbmd.getcolumns("%", "db090", tablename, "%"); 35. System.out.println("Columns"); 36. while (colrs.next()) { 37. String columnname = colrs.getstring("column_name"); 38. String columntn = colrs.getstring("type_name"); 39. System.out.println(columnName+ " " + " " + columntn); 40. } Δρ. Κεραμόπουλος Ευκλείδης 39

40 41. System.out.println(); 42. ResultSet fkrs = dbmd.getimportedkeys("", "db090",tablename); 43. System.out.println("Foreign keys"); while (fkrs.next()) { 46. String foreignkeyname = fkrs.getstring("fkcolumn_name"); 47. System.out.print(foreignkeyName+ " "); 48. } 49. System.out.println(); 50. } 51. statement.close(); 52. dbconnection.close(); 53. } 54. } Δρ. Κεραμόπουλος Ευκλείδης 40

41 boats TABLE Primary keys bid Columns bid int4 bname bpchar color bpchar Foreign keys reserves TABLE Primary keys sid bid day1 Columns sid int4 bid int4 day1 date Foreign keys bid sid sailors TABLE Primary keys sid Columns sid int4 sname bpchar rating int4 age float4 Foreign keys Δρ. Κεραμόπουλος Ευκλείδης 41

42

43 Το πρώτο βήμα για να έχουμε πρόσβαση σε Parameter Metadata είναι να ορίσουμε το αντίστοιχο αντικείμενο. Παράδειγμα: con μεταβλητή που δημιουργήθηκε από Connection αντικείμενο prstatement = con.preparestatement(select_query_with_parameters) ParameterMetaData paraminfo = prstatement.getparametermetadata(); Δρ. Κεραμόπουλος Ευκλείδης 43

44 Μέθοδος getparametercount Επιστρέφει τον αριθμό των παραμέτρων ενός αιτήματος int getparametercount() throws SQLException Παράδειγμα prstatement = con.preparestatement("select * from Sailors Where sname =? and rating =?"); ParameterMetaData paraminfo = prstatement.getparametermetadata(); int NumberOfParameters = paraminfo.getparametercount(); System.out.println("Number of parameters: "+NumberOfParameters); Δρ. Κεραμόπουλος Ευκλείδης 44

45 Μέθοδος getparametertypename Επιστρέφει τον τύπο των παραμέτρων String getparametertypename(int param) throws SQLException Παράδειγμα String typename = paraminfo.getparametertypename(i); System.out.println("Type of parameters: "+typename); Δρ. Κεραμόπουλος Ευκλείδης 45

46 1. import java.sql.*; 2. public class Jdbc_mini_metadata_PM2_postgres { 3. static String driverclassname = "org.postgresql.driver" ; 4. static String url = "jdbc:postgresql://localhost:5432/postgres" ; 5. static Connection dbconnection = null; 6. static PreparedStatement prstatement = null; 7. public static void main (String[] argv) throws Exception { 8. Class.forName (driverclassname); 9. dbconnection = DriverManager.getConnection (url, "postgres", "postgres"); 10. prstatement = dbconnection.preparestatement("select * from Sailors Where sname =? and rating =?"); 11. ParameterMetaData paraminfo = prstatement.getparametermetadata(); 12. int NumberOfParameters = paraminfo.getparametercount(); 13. System.out.println("Number of parameters: "+NumberOfParameters); 14. for (int i=1;i<numberofparameters+1;i++){ 15. String typename = paraminfo.getparametertypename(i); 16. System.out.println("Type of parameters: "+typename); 17. } 18. dbconnection.commit(); 19. prstatement.close(); 20. dbconnection.close(); 21. } 22. } Δρ. Κεραμόπουλος Ευκλείδης 46

47 Number of parameters: 2 Type of parameters: bpchar Type of parameters: int4 Δρ. Κεραμόπουλος Ευκλείδης 47

48 ΕΠΟΜΕΝΗ ΕΝΟΤΗΤΑ

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

ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ Σε ένα πρόγραμμα κατά την εκτέλεση του ένα ερώτημα SQL μπορεί δυναμικά να παίρνει διαφορετικές παραμέτρους μπορεί να πάρει πολλές παραμέτρους oι παράμετροι δηλώνονται με? Στις παραμέτρους

Διαβάστε περισσότερα

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

ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ Είναι τμήματα προγράμματος Βάσης Δεδομένων (διαδικασίες\procedures ή συναρτήσεις\functions) που αποθηκεύονται μόνιμα και εκτελούνται στον διακομιστή της Βάσης Δεδομένων. Δρ. Κεραμόπουλος

Διαβάστε περισσότερα

( Boats)) ( Tempsids, bid. sname. Boats. Boats. Boats. (Reserves)/ > Reserves. Interlake' Sailors) ...

( Boats)) ( Tempsids, bid. sname. Boats. Boats. Boats. (Reserves)/ > Reserves. Interlake' Sailors) ... sname rating age Dustin 7 45.0 29 Brutus 1 33.0 Lubber 8 55.5 32 Andy 8 25.5 58 Rusty 10 35.0 64 Horatio 7 35.0 71 Zorba 10 16.0 74 Horatio 9 35.0 85 Art 3 25.5 95 Bob 3 63.5 day 101 10/10/98 102 10/10/98

Διαβάστε περισσότερα

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

ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ Πίνακας Πεδίο Τύπος Κύριο κλειδί Αναφορική ακεραιότητα οντοτήτων Ξένο κλειδί Αναφορική ακεραιότητα δεδομένων Δρ. Κεραμόπουλος Ευκλείδης 2 ΚΥΡΙΟ ΚΛΕΙΔΙ ΦΟΙΤΗΤΗΣ ΑΜ CHAR(5) ΟΝΟΜΑ VARCHAR(20)

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

ΕΣΔ 232: ΟΡΓΑΝΩΣΗ ΔΕΔΟΜΕΝΩΝ ΣΤΗΝ ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ. Ακαδημαϊκό Έτος , Εαρινό Εξάμηνο Διδάσκων Καθ.: Νίκος Τσαπατσούλης

ΕΣΔ 232: ΟΡΓΑΝΩΣΗ ΔΕΔΟΜΕΝΩΝ ΣΤΗΝ ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ. Ακαδημαϊκό Έτος , Εαρινό Εξάμηνο Διδάσκων Καθ.: Νίκος Τσαπατσούλης ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ, ΤΜΗΜΑ ΕΠΙΚΟΙΝΩΝΙΑΣ & ΣΠΟΥΔΩΝ ΔΙΑΔΙΚΤΥΟΥ ΕΣΔ 232: ΟΡΓΑΝΩΣΗ ΔΕΔΟΜΕΝΩΝ ΣΤΗΝ ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ Ακαδημαϊκό Έτος 2011 2012, Εαρινό Εξάμηνο Καθ.: Νίκος Τσαπατσούλης ΥΠΟΔΕΙΓΜΑ

Διαβάστε περισσότερα

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

Εργαστήριο Ανάπτυξης Εφαρμογών Βάσεων Δεδομένων. Εξάμηνο 7 ο Εργαστήριο Ανάπτυξης Εφαρμογών Βάσεων Δεδομένων Εξάμηνο 7 ο JDBC JDBC is a set of classes and interfaces written in Java that allows Java programs to send SQL statements to a database like Oracle JDBC

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Βάσεις Δεδομένων (4 ο εξάμηνο) Εργαστήριο MySQL #2

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Βάσεις Δεδομένων (4 ο εξάμηνο) Εργαστήριο MySQL #2 ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ Βάσεις Δεδομένων (4 ο εξάμηνο) Εργαστήριο MySQL #2 Διδάσκων: Γιάννης Θεοδωρίδης Συντάκτης Κειμένου: Βαγγέλης Κατσικάρος Φεβρουάριος 2008 Περιεχόμενα SQL Language

Διαβάστε περισσότερα

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

MySQL + Γλώσσα Προγραμματισμού. Βάσεις Δεδομένων 2013-2014 Ευαγγελία Πιτουρά 1 MySQL + Γλώσσα Προγραμματισμού Ευαγγελία Πιτουρά 1 Database drivers Για να χρησιμοποιήσουμε μια βάση δεδομένων από μια γλώσσα προγραμματισμού χρειαζόμαστε έναν driver. JDBC είναι το API για τη Java και

Διαβάστε περισσότερα

SQL: Αιτήματα. Κεφάλαιο 5. Database Management Systems, R. Ramakrishnan and J. Gehrke

SQL: Αιτήματα. Κεφάλαιο 5. Database Management Systems, R. Ramakrishnan and J. Gehrke SQL: Αιτήματα Κεφάλαιο 5 Database Management Systems, R. Ramakrishnan and J. Gehrke Στιγμιότυπα Στιγμιότυπα των σχέσεων Sailors Reserves και Boats. Αν στο κλειδί της σχέσης Reserved δε συμμετείχε το γνώρισμα

Διαβάστε περισσότερα

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

MySQL + Γλώσσα Προγραμματισμού. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 MySQL + Γλώσσα Προγραμματισμού Ευαγγελία Πιτουρά 1 Database drivers Για να χρησιμοποιήσουμε μια βάση δεδομένων από μια γλώσσα προγραμματισμού χρειαζόμαστε έναν driver. JDBC είναι το API για τη Java και

Διαβάστε περισσότερα

Προγραμματισμός ΙΙ (Java) 6. Διαχείριση δεδομένων

Προγραμματισμός ΙΙ (Java) 6. Διαχείριση δεδομένων Προγραμματισμός ΙΙ (Java) 6. Διαχείριση δεδομένων Σχεσιακές Βάσεις Δεδομένων Τα δεδομένα μας οργανώνονται σε ένα ή περισσότερους πίνακες: σε στήλες και σειρές Κάθε πίνακας έχει ένα όνομα και αποτελείται

Διαβάστε περισσότερα

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

Βάσεις Δεδομένων 2η εργαστηριακή άσκηση Βάσεις Δεδομένων 2η εργαστηριακή άσκηση Εισαγωγή στο περιβάλλον της oracle Δημιουργία πινάκων Δρ. Εύη Φαλιάγκα 1. Login Χρησιμοποιώντας έναν web explorer, μπαίνετε στο http://10.0.0.6:8080/apex και συμπληρώνετε

Διαβάστε περισσότερα

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

Εργαστήριο Ανάπτυξης Εφαρμογών Βάσεων Δεδομένων. Εξάμηνο 7 ο Εργαστήριο Ανάπτυξης Εφαρμογών Βάσεων Δεδομένων Εξάμηνο 7 ο Oracle SQL Developer An Oracle Database stores and organizes information. Oracle SQL Developer is a tool for accessing and maintaining the data

Διαβάστε περισσότερα

Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 2 : ΜΕΤΑΒΛΗΤΕΣ ΤΕΛΕΣΤΕΣ & ΕΚΦΡΑΣΕΙΣ ΕΛΕΓΧΟΣ ΡΟΗΣ

Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 2 : ΜΕΤΑΒΛΗΤΕΣ ΤΕΛΕΣΤΕΣ & ΕΚΦΡΑΣΕΙΣ ΕΛΕΓΧΟΣ ΡΟΗΣ Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 2 : ΜΕΤΑΒΛΗΤΕΣ ΤΕΛΕΣΤΕΣ & ΕΚΦΡΑΣΕΙΣ ΕΛΕΓΧΟΣ ΡΟΗΣ Κων. Κόκκινος Μεταβλητές-1 Οι μεταβλητές αποτελούν θέσεις μνήμης στις οποίες αποθηκεύονται τιμές αντίστοιχες

Διαβάστε περισσότερα

ΑΠΟΘΗΚΕΥΜΕΝΕΣ ΔΙΑΔΙΚΑΣΙΕΣ

ΑΠΟΘΗΚΕΥΜΕΝΕΣ ΔΙΑΔΙΚΑΣΙΕΣ ΑΠΟΘΗΚΕΥΜΕΝΕΣΔΙΑΔΙΚΑΣΙΕΣ ΓΕΝΙΚΑ Οι αποθηκευμένες διαδικασίες είναι τμήματα προγράμματος Βάσης Δεδομένων (διαδικασίες\procedures ή συναρτήσεις\functions) που αποθηκεύονται μόνιμα και εκτελούνταιστονδιακομιστήτηςβάσηςδεδομένων.

Διαβάστε περισσότερα

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

ΤΑΞΙΝΟΜΗΣΗ ΑΠΟΤΕΛΕΣΜΑΤΩΝ ΕΡΩΤΗΜΑΤΟΣ ΤΑΞΙΝΟΜΗΣΗ ΑΠΟΤΕΛΕΣΜΑΤΩΝ ΕΡΩΤΗΜΑΤΟΣ Η συνθήκη WHERE βάζει περιορισμούς στις εγγραφές που επιστρέφονται. Ο όρος ORDER BY ταξινομεί τις εγγραφές που επιστρέφονται. Παράδειγμα: SELECT * FROM table_name ORDER

Διαβάστε περισσότερα

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

7. Ανάπτυξη Εφαρµογών Βάσεων Δεδοµένων Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων 7. Ανάπτυξη Εφαρµογών Βάσεων Δεδοµένων Σχεδιασμός Βάσεων Δεδομένων Χρήστος Δουλκερίδης 2017-18 Διάρθρωση

Διαβάστε περισσότερα

Βάσεις Δεδομένων (Databases)

Βάσεις Δεδομένων (Databases) Βάσεις Δεδομένων (Databases) ΕΠΛ 342 Χειμερινό Εξάμηνο 2011 Διδάσκοντες Καθηγητές Γιώργος Σαμάρας (ΧΩΔ01 109) Δομημένη Γλώσσα Ερωτήσεων SQL - DDL SQL Περίληψη SQL Τύποι δεδομένων DDL Δηλώσεις - Εντολές

Διαβάστε περισσότερα

Μιχάλης Μασούρας Επιβλέπων Καθηγητής: Ιγνάτιος Δεληγιάννης

Μιχάλης Μασούρας Επιβλέπων Καθηγητής: Ιγνάτιος Δεληγιάννης Μιχάλης Μασούρας Επιβλέπων Καθηγητής: Ιγνάτιος Δεληγιάννης Η ανάπτυξη ενός αντικειμενοστρεφούς συστήματος λογισμικού, το οποίο θα διαχειρίζεται δεδομένα των βιογραφικών σημειωμάτων των υποψηφίων. Δυνατότητα

Διαβάστε περισσότερα

H SQL είναι η γλώσσα για όλα τα εμπορικά σχεσιακά συστήματα διαχείρισης βάσεων δεδομένων

H SQL είναι η γλώσσα για όλα τα εμπορικά σχεσιακά συστήματα διαχείρισης βάσεων δεδομένων Η γλώσσα SQL H SQL είναι η γλώσσα για όλα τα εμπορικά σχεσιακά συστήματα διαχείρισης βάσεων δεδομένων H SQL έχει διάφορα τμήματα: Γλώσσα Ορισμού Δεδομένων (ΓΟΔ) Γλώσσα Χειρισμού Δεδομένων (ΓΧΔ) Ενσωματωμένη

Διαβάστε περισσότερα

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

Περιγραφή της εργασίας Προγραμματισμός Internet Εξάμηνο: Χειμερινό 2006-2007 Εργασία Εργαστηρίου Δευτέρα 11 Δεκ. 2006 Περιγραφή της εργασίας Μία εταιρία ηλεκτρονικού εμπορίου εμπορεύεται βιβλία πληροφορικής μέσω διαδικτύου.

Διαβάστε περισσότερα

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

Βάσεις Δεδομένων 5η εργαστηριακή άσκηση Βάσεις Δεδομένων 5η εργαστηριακή άσκηση SQL Δρ. Μαρία Ευθυμιοπούλου Εντολές sql Για να γράψετε ή να επικολλήσετε εντολές sql πηγαίνετε από το μενού SQL Workshop και επιλέγετε το SQL Commands 1. Δημιουργία

Διαβάστε περισσότερα

Lecture 3: Introduction III

Lecture 3: Introduction III Department of Computer Science University of Cyprus EPL342 Databases Lecture 3: Introduction III System Concepts and Architecture (Chapters 2.2-2.7, Elmasri-Navathe 5ED) ιδάσκων: Παναγιώτης Ανδρέου http://www.cs.ucy.ac.cy/courses/epl342

Διαβάστε περισσότερα

SQL: Αιτήματα. ( Συνέχεια...) Κεφάλαιο 5. Ενηµέρωση: 23/12/2008. Database Management Systems, R. Ramakrishnan and J. Gehrke

SQL: Αιτήματα. ( Συνέχεια...) Κεφάλαιο 5. Ενηµέρωση: 23/12/2008. Database Management Systems, R. Ramakrishnan and J. Gehrke SQL: Αιτήματα ( Συνέχεια...) Κεφάλαιο 5 Ενηµέρωση: 23/12/2008 Database Management Systems, R. Ramakrishnan and J. Gehrke Τελεστές Συνάθροισης Σημαντική π ροέκταση της σχεσιακής άλγεβρας. COUNT (*) COUNT

Διαβάστε περισσότερα

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

Οδηγίες Χρήσης της MySQL ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΣΗΜΕΙΩΣΕΙΣ ΣΕ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Οδηγίες Χρήσης της MySQL Διδάσκων: Γιάννης Θεοδωρίδης Συντάκτης Κειμένου: Βαγγέλης Κατσικάρος Νοέμβριος 2007 1 Περιεχόμενα Εισαγωγή...2

Διαβάστε περισσότερα

SQL Τύποι Δεδομένων Δημιουργία Πίνακα Παράδειγμα.. Εργαστήριο Βάσεων Δεδομένων. Εισαγωγή στη MySQL (1)

SQL Τύποι Δεδομένων Δημιουργία Πίνακα Παράδειγμα.. Εργαστήριο Βάσεων Δεδομένων. Εισαγωγή στη MySQL (1) Εργαστήριο Βάσεων Δεδομένων Εισαγωγή στη My (1) Η (Structured Query Language) είναι μια πλήρης γλώσσα Βάσεων Δεδομενων Είναι δομημένη σε βάσεις που περιέχουν πίνακες Οι πίνακες αποτελούνται από γραμμές

Διαβάστε περισσότερα

Παράδειγμα Insert Update Delete Alter.. Εργαστήριο Βάσεων Δεδομένων. Εισαγωγή στη MySQL (2)

Παράδειγμα Insert Update Delete Alter.. Εργαστήριο Βάσεων Δεδομένων. Εισαγωγή στη MySQL (2) Εργαστήριο Βάσεων Δεδομένων Εισαγωγή στη MySQL (2) ER Σχεσιακό Create Tables 1/4 CREATE TABLE student( name VARCHAR(25) DEFAULT 'unknown' NOT NULL, lastname VARCHAR(25) DEFAULT 'unknown' NOT NULL, AM INT(5)

Διαβάστε περισσότερα

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

Βάσεις Δεδομένων Ι - 05. SQL Μέρος 3 ο. (Constraints & Joins) Φώτης Κόκκορας (MSc/PhD) Τμήμα Μηχανικών Πληροφορικής ΤΕ Βάσεις Δεδομένων Ι - 05 SQL Μέρος 3 ο (Constraints & Joins) Φώτης Κόκκορας (MSc/PhD) Τμήμα Μηχανικών Πληροφορικής ΤΕ ΤΕΙ Θεσσαλίας Πρόσθετες Διαφάνειες σε Προηγούμενα Θέματα...σε Διαγραφή Πλειάδων Σημασιολογία

Διαβάστε περισσότερα

ιαδικτυακές Εφαρµογές

ιαδικτυακές Εφαρµογές ιαδικτυακές Εφαρµογές µε Java2 Στοιχεία ικτυακής Επικοινωνίας Όροι IP address 32bit αριθµός που χρησιµοποιείται από το Internet Protocol για την παράδοση δεδοµένων στο σωστό υπολογιστή στο δίκτυο. Port

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

alpha Language age (3/5) alpha Language Φροντιστήριο Syntax Directed Translation and

alpha Language age (3/5) alpha Language Φροντιστήριο Syntax Directed Translation and alpha Language (1/5) ΗΥ-340 Γλώσσες και Μεταφραστές Φροντιστήριο Syntax Directed Translation and alpha Language Στην alpha δεν υπάρχει main() συνάρτηση, ο κώδικας ξεκινάει την εκτέλεση από την αρχή του

Διαβάστε περισσότερα

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

Εισαγωγή στις Βάσεις Δεδομένων Εισαγωγή στις Βάσεις Δεδομένων Διάγραμμα Παρουσίασης 1. Τι είναι οι Βάσεις Δεδομένων; Γιατί Παρουσιάζουν τόσο Ενδιαφέρον; 2. Ποια είναι τα Πλεονεκτήματα των Βάσεων Δεδομένων; 3. Προκλήσεις του Μέλλοντος;

Διαβάστε περισσότερα

Βάσεις Δεδομένων (Databases)

Βάσεις Δεδομένων (Databases) Βάσεις Δεδομένων (Databases) ΕΠΛ 342 Χειμερινό Εξάμηνο 2011 Διδάσκοντες Καθηγητές Γιώργος Σαμάρας (ΧΩΔ01 109) Δημιουργία Πεδίων Ορισμού Πεδίο Ορισμού είναι συστατικό του σχήματος για τον ορισμό των μακροεντολών

Διαβάστε περισσότερα

, Evaluation of a library against injection attacks

, Evaluation of a library against injection attacks THE INSTITUTE OF ELECTRONICS, INFMATION AND COMMUNICATION ENGINEERS TECHNICAL REPT OF IEICE., () 211 8588 4 1 1 221 0835 2 14 1 E-mail: okubo@jp.fujitsu.com, tanaka@iisec.ac.jp Web,,,, Evaluation of a

Διαβάστε περισσότερα

Σχεσιακή Άλγεβρα. Κεφάλαιο 4. Database Management Systems, R. Ramakrishnan and J. Gehrke

Σχεσιακή Άλγεβρα. Κεφάλαιο 4. Database Management Systems, R. Ramakrishnan and J. Gehrke Σχεσιακή Άλγεβρα Κεφάλαιο 4 Database Management Systems, R. Ramakrishnan and J. Gehrke 1 Γλώσσες Σχεσιακών Αιτηµάτων v Γλώσσες Αιτηµάτων: Ε ιτρέ ουν τη ιαχείριση και την Ανάκτηση εδοµένων α ό µια Β. v

Διαβάστε περισσότερα

Προηγμένα Πληροφοριακά Συστήματα. Ακαδημαϊκό Έτος

Προηγμένα Πληροφοριακά Συστήματα. Ακαδημαϊκό Έτος Προηγμένα Πληροφοριακά Συστήματα Ακαδημαϊκό Έτος 2016-2017 Ομάδα: 1. Κανούτος Κωνσταντίνος ΑΜ: 5775 2. Καραχάλιος Αθανάσιος ΑΜ: 5784 3. Κυριακού Ανδρόνικος ΑΜ: 5806 4. Ντενέζος Παναγιώτης ΑΜ: 5853 5. Παρασκευόπουλος

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Οδηγίες Χρήσης της MySQL ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΣΗΜΕΙΩΣΕΙΣ ΣΕ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Οδηγίες Χρήσης της MySQL Διδάσκων: Γιάννης Θεοδωρίδης Συντάκτης Κειμένου: Βαγγέλης Κατσικάρος Απρίλιος 2007 1 Περιεχόμενα Εισαγωγή...2

Διαβάστε περισσότερα

Query-by-Example (QBE)

Query-by-Example (QBE) Φροντιστήριο 8 o Χειµερινό Εξάµηνο 2009-10 Τµήµα Μηχανικών Η/Υ και Πληροφορικής Πολυτεχνική Σχολή, Πανεπιστήµιο Πατρών Πέµπτη, 3 εκεµβρίου 2009 Τι είναι η QBE; Γλώσσα επερωτήσεων σε σχεσιακές ϐάσεις δεδοµένων

Διαβάστε περισσότερα

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

Αποθηκευμένες Διαδικασίες Stored Routines (Procedures & Functions) Αποθηκευμένες Διαδικασίες Stored Routines (Procedures & Functions) Αυγερινός Αραμπατζής avi@ee.duth.gr www.aviarampatzis.com Βάσεις Δεδομένων Stored Procedures 1 Stored Routines (1/2) Τμήματα κώδικα τα

Διαβάστε περισσότερα

9:00-10:00 π.μ. (60 λεπτά) Παρασκευή, 14 Οκτωβρίου, 2016

9:00-10:00 π.μ. (60 λεπτά) Παρασκευή, 14 Οκτωβρίου, 2016 Πανεπιστήμιο Κύπρου Πολυτεχνική Σχολή Τμήμα Πολιτικών Μηχανικών και Μηχανικών Περιβάλλοντος ΠΠΜ 401: Ανάπτυξη Λογισμικού Εφαρμογών Μηχανικής, 2016 Ακαδημαϊκό Έτος 2016-17, Χειμερινό Εξάμηνο 1 η Ενδιάμεση

Διαβάστε περισσότερα

Το σχεσιακό μοντέλο βάσεων δεδομένων

Το σχεσιακό μοντέλο βάσεων δεδομένων ΕΣΔ232 Οργάνωση Δεδομένων στη Κοινωνία της Πληροφορίας Το σχεσιακό μοντέλο βάσεων δεδομένων Περιεχόμενα Περιεχόμενα - Βιβλιογραφία Ενότητας Εισαγωγή στο σχεσιακό μοντέλο Σχεσιακές γλώσσες ερωτημάτων Περιορισμοί

Διαβάστε περισσότερα

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

ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ Ενσωμάτωση SQL εντολών σε μία γενικού σκοπού γλώσσα προγραμματισμού Η φιλόξενη γλώσσα προγραμματισμού έχει στη διάθεση της μια βιβλιοθήκη από συναρτήσεις για κλήσεις στη Βάση Δεδομένων

Διαβάστε περισσότερα

Τύποι Δεδομένων και Απλές Δομές Δεδομένων. Παύλος Εφραιμίδης V1.0 ( )

Τύποι Δεδομένων και Απλές Δομές Δεδομένων. Παύλος Εφραιμίδης V1.0 ( ) Τύποι Δεδομένων και Απλές Δομές Δεδομένων Παύλος Εφραιμίδης V1.0 (2014-01-13) Απλές Δομές Δεδομένων Στην ενότητα αυτή θα γνωρίσουμε ορισμένες απλές Δομές Δεδομένων και θα τις χρησιμοποιήσουμε για την αποδοτική

Διαβάστε περισσότερα

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

ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ Μία διαδικασία την οποία δηλώνει ο Διαχειριστής της Βάσης Δεδομένων και η οποία ενεργοποιείται αυτόματα από το ΣΔΒΔ κάθε φορά που συμβαίνουν μεταβολές ορισμένου τύπου στα δεδομένα

Διαβάστε περισσότερα

Θέματα Προγραμματισμού Διαδικτύου ~ MySQL & PHP ~

Θέματα Προγραμματισμού Διαδικτύου ~ MySQL & PHP ~ Θέματα Προγραμματισμού Διαδικτύου ~ MySQL & PHP ~ Στελιος Σφακιανάκης Εαρινό 2019 Αυτή η εργασία χορηγείται με άδεια Creative Commons Αναφορά Δημιουργού - Μη Εμπορική Χρήση - Παρόμοια Διανομή 1 Ροή Δεδομένων

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ Web Services

ΚΕΦΑΛΑΙΟ Web Services ΚΕΦΑΛΑΙΟ Web Services Προϋποθέσεις εγκατάστασης Web Services για το Κεφάλαιο 4.50 1. Κεφάλαιο έκδοση 4.51e build 458 ή νεότερο 2. Internet Information Server (IIS) version 6 ή νεότερος 3. Σε κάποιον υπολογιστή

Διαβάστε περισσότερα

ΗΥ-360 Αρχεία και Βάσεις Δεδομένων Διδάσκων: Δ. Πλεξουσάκης. Φροντιστήριο SQL Examples Ξένου Ρουμπίνη

ΗΥ-360 Αρχεία και Βάσεις Δεδομένων Διδάσκων: Δ. Πλεξουσάκης. Φροντιστήριο SQL Examples Ξένου Ρουμπίνη ΗΥ-360 Αρχεία και Βάσεις Δεδομένων Διδάσκων: Δ. Πλεξουσάκης Φροντιστήριο SQL Examples Ξένου Ρουμπίνη 1 SQL-DDL Data Definition/Description Language (DDL): προσδιορίζουν τη δομή ή το σχήμα των δεδομένων.

Διαβάστε περισσότερα

ΕΠΛ131 Αρχές Προγραμματισμού

ΕΠΛ131 Αρχές Προγραμματισμού ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ131 Αρχές Προγραμματισμού Ακαδημαϊκό Έτος 2016/17 Εαρινό Εξάμηνο ΕΝΔΙΑΜΕΣΗ ΕΞΕΤΑΣΗ ΗΜΕΡΟΜΗΝΙΑ: 15 Μαρτίου 2017 ΔΙΑΡΚΕΙΑ: 4:00μμ 6:30μμ ΑΙΘΟΥΣΕΣ: Κτήριο ΧΩΔ01,

Διαβάστε περισσότερα

Συστήματα Διαχείρισης Βάσεων Δεδομένων

Συστήματα Διαχείρισης Βάσεων Δεδομένων ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ Συστήματα Διαχείρισης Βάσεων Δεδομένων Νικόλαος Ζ. Ζάχαρης Τι είναι μια Βάση Δεδομένων Είναι

Διαβάστε περισσότερα

Προγραμματισμός Παγκόσμιου Ιστού

Προγραμματισμός Παγκόσμιου Ιστού Πανεπιστήμιο Πειραιώς Τμήμα Ψηφιακών Συστημάτων Προγραμματισμός Παγκόσμιου Ιστού 10 η Διάλεξη Δημοσθένης Κυριαζής Δευτέρα 22 Μαΐου 2017 Σημερινή διάλεξη Σύνοψη προηγούμενης διάλεξης SQL Δημιουργία ΒΔ Δημιουργία

Διαβάστε περισσότερα

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

Διαδικτυακές Εφαρμογές Ενότητα 7: Προσπέλαση ΒΔ με το JDBC Διαδικτυακές Εφαρμογές Ενότητα 7: Προσπέλαση ΒΔ με το JDBC Μιχάλας Άγγελος Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

Διαβάστε περισσότερα

Διάλεξη 3: Προγραμματισμός σε JAVA I. Διδάσκων: Παναγιώτης Ανδρέου

Διάλεξη 3: Προγραμματισμός σε JAVA I. Διδάσκων: Παναγιώτης Ανδρέου Διάλεξη 3: Προγραμματισμός σε JAVA I Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή στις έννοιες: - Στοιχειώδης Προγραμματισμός - Προγραμματισμός με Συνθήκες - Προγραμματισμός με Βρόγχους

Διαβάστε περισσότερα

Εαρινό Εξάμηνο

Εαρινό Εξάμηνο ΙΙ Παράλληλες ΙΙ Τμήμα Μηχανικών Η/Υ και Πληροϕορικής Πολυτεχνική Σχολή, Πανεπιστήμιο Πατρών Εαρινό Εξάμηνο 2011-2012 Table of contents ΙΙ 1 Παράλληλες Table of contents ΙΙ Παράλληλες 1 2 Table of contents

Διαβάστε περισσότερα

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

Ιατρική Πληροφορική. Δρ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ.Ε. Ιατρική Πληροφορική Δρ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ.Ε. Χρήσιμοι Σύνδεσμοι Σημειώσεις μαθήματος: http://medisp.bme.teiath.gr/eclass/courses/tio103/ https://eclass.teiath.gr/courses/tio100/

Διαβάστε περισσότερα

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

Βάσεις Δεδομένων 3η εργαστηριακή άσκηση Βάσεις Δεδομένων 3η εργαστηριακή άσκηση Εισαγωγή στο περιβάλλον της oracle Συσχέτιση πινάκων (εισαγωγή ξένων κλειδιών) Δρ. Μαρία Ευθυμιοπούλου 1. Εμφάνιση πινάκων στο Workspace Στο προηγούμενο εργαστήριο

Διαβάστε περισσότερα

Το Σχεσιακό μοντέλο και η γλώσσα SQL

Το Σχεσιακό μοντέλο και η γλώσσα SQL Το Σχεσιακό μοντέλο και η γλώσσα SQL Μανόλης Γεργατσούλης (manolis@ionio.gr) Αναπληρωτής Καθηγητής Ομάδα Βάσεων Δεδομένων και Πληροφοριακών Συστημάτων, Τμήμα Αρχειονομίας Βιβλιοθηκονομίας, Ιόνιο Πανεπιστήμιο

Διαβάστε περισσότερα

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι Ενότητα 3:

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

Διαβάστε περισσότερα

Κεφάλαιο 14 Διασύνδεση με Εφαρμογές JAVA

Κεφάλαιο 14 Διασύνδεση με Εφαρμογές JAVA Κεφάλαιο 14 Διασύνδεση με Εφαρμογές JAVA Σύνοψη Στο παρόν κεφάλαιο θα παρουσιασθούν βασικά στοιχεία όσον αφορά την σύνδεση ενός προγράμματος Java με την Mysql και την εκτέλεση εντολών σε αυτή. Προαπαιτούμενη

Διαβάστε περισσότερα

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

Ιατρική Πληροφορική. Δρ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ. Ε. Χρήσιμοι Σύνδεσμοι Ιατρική Πληροφορική Δρ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ. Ε. Χρήσιμοι Σύνδεσμοι Σημειώσεις μαθήματος: http://medisp.bme.teiath.gr/eclass/courses/tio103/ https://eclass.teiath.gr/courses/tio100/

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Βάσεις Δεδομένων (4 ο εξάμηνο) Εργαστήριο MySQL #3

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Βάσεις Δεδομένων (4 ο εξάμηνο) Εργαστήριο MySQL #3 ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ Βάσεις Δεδομένων (4 ο εξάμηνο) Εργαστήριο MySQL #3 Διδάσκων: Γιάννης Θεοδωρίδης Συντάκτης Κειμένου: Βαγγέλης Κατσικάρος Φεβρουάριος 2008 Περιεχόμενα ξένα κλειδιά

Διαβάστε περισσότερα

ΘΕΜΑΤΑ. Ερώτηση 1 Κατά τη Φυσική Αποθήκευση (Physical storage) μιας ΒΔ αποθηκεύονται στον δίσκο τα:

ΘΕΜΑΤΑ. Ερώτηση 1 Κατά τη Φυσική Αποθήκευση (Physical storage) μιας ΒΔ αποθηκεύονται στον δίσκο τα: ΘΕΜΑΤΑ Θέμα 1 ο Σε μία βάση δεδομένων χρηματιστηριακών συναλλαγών υπάρχουν οι παρακάτω πίνακες που αποτελούνται από τα εξής πεδία : : ΚΣ, ΗΜΝΙΑ, ΩΡΑ, ΚΜ, ΤΙΜΗ ΜΕΤΟΧΗ : ΚΜ, ΟΝΟΜΑ, ΕΤΟΣ_ΙΔΡΥΣΗΣ, ΚΚ, ΚΑΤΗΓΟΡΙΑ

Διαβάστε περισσότερα

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07 ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07 Αριθμητική στο δυαδικό σύστημα (γενικά) Συμπληρωματικά για δυαδικό σύστημα Η πρόσθεση στηρίζεται στους κανόνες: 0 + 0 = 0, 0 + 1 = 1, 1

Διαβάστε περισσότερα

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

Βάσεις Δεδομένων ΗγλώσσαSQL (Structured Query Language) Βάσεις Δεδομένων ΗγλώσσαSQL (Structured Query Language) Παύλος Εφραιμίδης Βάσεις Δεδομένων Η Γλώσσα SQL - Μέρος Πρώτο 1 SQL - Structured Query Language (1) Ένας από τους βασικούς λόγους της απόλυτης επικράτησης

Διαβάστε περισσότερα

2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων

2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων 2 Βασικές Εντολές 2.1. Εντολές Οι στην Java ακολουθούν το πρότυπο της γλώσσας C. Έτσι, κάθε εντολή που γράφουμε στη Java θα πρέπει να τελειώνει με το ερωτηματικό (;). Όπως και η C έτσι και η Java επιτρέπει

Διαβάστε περισσότερα

10 η Διάλεξη Python Βάσεις δεδομένων στη python

10 η Διάλεξη Python Βάσεις δεδομένων στη python 10 η Διάλεξη Python Βάσεις δεδομένων στη python ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Η standard διεπαφη της python για βάσεις δεδομένων βασίζεται στο DB-API Python Database API υποστηρίζει ένα ευρύ φάσμα βάσεων δεδομένων

Διαβάστε περισσότερα

Β. Εισαγωγή στον Προγραμματισμό Η/Υ με την JavaScript

Β. Εισαγωγή στον Προγραμματισμό Η/Υ με την JavaScript Β. Εισαγωγή στον Προγραμματισμό Η/Υ με την JavaScript Β.1 Τύποι Δεδομένων Όλες οι γλώσσες προγραμματισμού (πρέπει να) υποστηρίζουν πέντε (5) πρωταρχικούς τύπους δεδομένων: char (character) int (integer)

Διαβάστε περισσότερα

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στην Python

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στην Python Εισαγωγή στην Επιστήμη Υπολογιστών Εισαγωγή στην Python Β Μέρος Δομή Ελέγχου if-elif-else Επαναληπτική Δομή Ελέγχου while Επαναληπτική Δομή Ελέγχου for Αλληλεπίδραση χρήστη-προγράμματος Συναρτήσεις Η δομή

Διαβάστε περισσότερα

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

NetBeans και σχετικά προγράμματα. Κακαρόντζας Γεώργιος Κέντρο Αριστείας Ανοιχτού Λογισμικού ΑΠΘ 1ο Θερινό Σχολείο Κώδικα NetBeans και σχετικά προγράμματα Κακαρόντζας Γεώργιος Κέντρο Αριστείας Ανοιχτού Λογισμικού ΑΠΘ 1ο Θερινό Σχολείο Κώδικα Ατζέντα Εγκατάσταση προγραμμάτων Java NetBeans MySQL Δημιουργία απλής εφαρμογής διαδικτύου

Διαβάστε περισσότερα

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αναφορές Έλεγχος ισότητας String Interning Αποαναφοροποίηση - dereferencing

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αναφορές Έλεγχος ισότητας String Interning Αποαναφοροποίηση - dereferencing ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Αναφορές Έλεγχος ισότητας String Interning Αποαναφοροποίηση - dereferencing ΕΛΕΓΧΟΣ ΙΣΟΤΗΤΑΣ Έλεγχος ισότητας Έχουμε πει ότι όταν ελέγχουμε ισότητα μεταξύ αντικειμένων

Διαβάστε περισσότερα

Χειμερινό εξάμηνο Πέτρος Κωμοδρόμος. eng.ucy.ac.cy/petros

Χειμερινό εξάμηνο Πέτρος Κωμοδρόμος.  eng.ucy.ac.cy/petros 23. Βάσεις δεδομένων (databases) και JDBC Χειμερινό εξάμηνο 2005 Πέτρος Κωμοδρόμος komodromos@ucy.ac.cy http://www. www.eng. eng.ucy.ac.cy/petros 1 Θέματα Introduction Relational Databases Relational Database

Διαβάστε περισσότερα

1. ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΤΗΣ MySQL

1. ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΤΗΣ MySQL 1. ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΤΗΣ MySQL Τύποι στην MySQL Κείμενο Αριθμοί Ημερομηνίες και ώρες Επιλογή του τύπου Στήλες ονομάτων τύπος κειμένου Στήλες ποσών ή ποσοτήτων Αριθμητικός τύπος Στήλες ημερομηνιών τύπος ημερομηνίας

Διαβάστε περισσότερα

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

Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL Εισαγωγή Μοντελοποίηση Στα προηγούμενα μαθήματα: Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL Εννοιολογικός Σχεδιασμός Βάσεων εδομένων (με χρήση του Μοντέλου Οντοτήτων/Συσχετίσεων) Λογικός

Διαβάστε περισσότερα

Κατασκευαστές. Μέθοδοι Κατασκευής (Constructors).

Κατασκευαστές. Μέθοδοι Κατασκευής (Constructors). Κατασκευαστές Μέθοδοι Κατασκευής (Constructors). Οι κατασκευαστές (constructors) είναι μέθοδοι που εκτελούνται όταν κατασκευάζεται ένα αντικείμενο. Μια τάξη μπορεί να έχει αρκετούς κατασκευαστές, οι οποίοι

Διαβάστε περισσότερα

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

Εργαστήριο Βάσεων Δεδομένων Εργαστήριο Βάσεων Δεδομένων Φροντιστήριο 3 ο (26/11/2008) Εισαγωγή στην Mysql SQL Η SQL (Structured Query Language) είναι μια πλήρης γλώσσα Βάσεων Δεδομένων. Είναι δομημένη σε βάσεις που περιέχουν πίνακες.

Διαβάστε περισσότερα

Ανοικτά Ακαδημαϊκά Μαθήματα

Ανοικτά Ακαδημαϊκά Μαθήματα Ανοικτά Ακαδημαϊκά Μαθήματα Τεχνολογικό Εκπαιδευτικό Ίδρυμα Αθήνας Case Study: Σύστημα Διαχείρισης Βάσης Βιβλιοθήκης (Library Information System) - Μοντελοποίηση και Κανονικοποίηση - Υλοποίηση με χρήση

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι Β. Μεγαλοοικονόμου, Δ. Χριστοδουλάκης Σχεσιακό Μοντέλο SQL- Μέρος Β Ακ.Έτος 2008-09 (μεβάσητιςσημειώσειςτωνsilberchatz, Korth και Sudarshan και του C. Faloutsos

Διαβάστε περισσότερα

Σχηματίζοντας Γραφικές Παραστάσεις για Ημίτονο και Συνημίτονο και Ελέγχοντας Περιορισμούς σε Συστάδες Καρτών Τόμπολας

Σχηματίζοντας Γραφικές Παραστάσεις για Ημίτονο και Συνημίτονο και Ελέγχοντας Περιορισμούς σε Συστάδες Καρτών Τόμπολας ΕΡΓΑΣΙΑ 2 Σχηματίζοντας Γραφικές Παραστάσεις για Ημίτονο και Συνημίτονο και Ελέγχοντας Περιορισμούς σε Συστάδες Καρτών Τόμπολας Εισαγωγή Ημερομηνία Ανάρτησης: 16/02/2017 Ημερομηνία Παράδοσης: 06/03/2017,

Διαβάστε περισσότερα

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

Αντικειμενοστρεφής Προγραμματισμός Αντικειμενοστρεφής Προγραμματισμός Διδάσκουσα: Αναπλ. Καθηγήτρια Ανδριάνα Πρέντζα aprentza@unipi.gr Εργαστηριακός Συνεργάτης: Δρ. Βασιλική Κούφη vassok@unipi.gr Εργαστήριο 2 Βασικοί Τύποι Μεταβλητών Java

Διαβάστε περισσότερα

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

Βάσεις Δεδομένων Η γλώσσα SQL (Structured Query Language) Εισαγωγή στην SQL (2) Ιστορικά Στοιχεία. SQL - Structured Query Language (1) Βάσεις Δεδομένων Η γλώσσα SQL Structured Query Language) Παύλος Εφραιμίδης SQL - Structured Query Language 1) Ένας από τους βασικούς λόγους της απόλυτης επικράτησης των Σχεσιακών ΒΔ Εξασφαλίζει μεταφερσιμότητα

Διαβάστε περισσότερα

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αναφορές Στοίβα και Σωρός Μνήμης Αντικείμενα ως ορίσματα

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αναφορές Στοίβα και Σωρός Μνήμης Αντικείμενα ως ορίσματα ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Αναφορές Στοίβα και Σωρός Μνήμης Αντικείμενα ως ορίσματα ΑΝΑΦΟΡΕΣ new Όπως είδαμε για να δημιουργήσουμε ένα αντικείμενο χρειάζεται να καλέσουμε τη new. Για

Διαβάστε περισσότερα

Αντικείµενα. ηµιουργία και χρησιµοποίηση αντικειµένων. ηµιουργία αντικειµένων

Αντικείµενα. ηµιουργία και χρησιµοποίηση αντικειµένων. ηµιουργία αντικειµένων Αντικείµενα ηµιουργία και χρησιµοποίηση αντικειµένων ηµιουργία αντικειµένων Για να δηµιουργήσω ένα νέο αντικείµενο χρησιµοποιώ τον τελεστή new µε τοόνοµατηςκλάσηςαπότηνοποίαθέλωναδηµιουργήσωένααντικείµενο,

Διαβάστε περισσότερα

Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ

Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ Διάλεξη 2:Αλφαριθμητικές Σειρές Χαρακτήρων (Strings)- Επανάληψη Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγικές Έννοιες σε Strings(Αρχικοποίηση, Ανάγνωση & Εκτύπωση) Πίνακες από Strings

Διαβάστε περισσότερα

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγή στη MySQL (1)

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγή στη MySQL (1) Εργαστήριο Βάσεων Δεδομένων Εισαγωγή στη MySQL (1) SQL Η SQL (Structured Query Language) είναι μια πλήρης γλώσσα Βάσεων Δεδομένων. Είναι δομημένη σε βάσεις που περιέχουν πίνακες. Οι πίνακες αποτελούνται

Διαβάστε περισσότερα

Κεφάλαιο Αλφαριθμητικές Σειρές Χαρακτήρων (Strings) (Διάλεξη 20) 1) Strings στη C

Κεφάλαιο Αλφαριθμητικές Σειρές Χαρακτήρων (Strings) (Διάλεξη 20) 1) Strings στη C Κεφάλαιο 9.1-9.2 Αλφαριθμητικές Σειρές Χαρακτήρων (Strings) (Διάλεξη 20) 1) Strings στη C Ένα string είναι μία ακολουθία αλφαριθμητικών χαρακτήρων, σημείων στίξης κτλ. Π.χ. Hello How are you? 121212 *Apple#123*%

Διαβάστε περισσότερα

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

Τμήμα Διοίκησης Επιχειρήσεων Τμήμα Διοίκησης Επιχειρήσεων «Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα» «Σημειώσεις για την SQL» ΕΞΑΜΗΝΟ: ΣΤ Δρ. Κωνσταντίνος Χ. Γιωτόπουλος Πάτρα, Νοέμβριος 2010 SQL Create Table Η CREATE TABLE

Διαβάστε περισσότερα

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 13/12/07

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 13/12/07 ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 13/12/07 Ένα απλό παράδειγμα μιας κλάσης εφαρμογής με δύο μεθόδους (κλήση μεθόδου μέσα στην ίδια κλάση): import java.util.*; public class Example

Διαβάστε περισσότερα

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

Αντικειµενοστρεφής Προγραµµατισµός 16 η διάλεξη Π. Σταθοπούλου pstath@ece.upatras.gr ή pstath@upatras.gr Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7 Φροντιστήριο : ευτέρα 11πµ-12πµ ΗΛ4 Προηγούµενη ιάλεξη

Διαβάστε περισσότερα

Η Γλώσσα SQL. Μέρος β. Η Γλώσσα SQL Σελίδα 1

Η Γλώσσα SQL. Μέρος β. Η Γλώσσα SQL Σελίδα 1 Η Γλώσσα SQL Μέρος β Η Γλώσσα SQL Σελίδα 1 Διαγραφή - Deletion Εντολή DELETE delete from relation_name where-qualification Σημασιολογία: Εκτέλεσε την ανάλογη SELECT εντολή και έπειτα διάγραψε τις πλειάδες

Διαβάστε περισσότερα

Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 4 : CLASSES

Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 4 : CLASSES Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 4 : CLASSES Κων. Κόκκινος Αντικειμενοστραφής Προγραμματισμός Η ιδέα του αντικειμενοστραφούς προγραμματισμού Αυτόνομες οντότητες Στιγμιότυπα οντοτήτων Παράδειγμα

Διαβάστε περισσότερα

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

Δομημένος Προγραμματισμός. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων Δομημένος Προγραμματισμός Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 2 Ορισμός

Διαβάστε περισσότερα

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αναφορές Στοίβα και Σωρός μνήμης Αντικείμενα παράμετροι String Interning

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αναφορές Στοίβα και Σωρός μνήμης Αντικείμενα παράμετροι String Interning ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Αναφορές Στοίβα και Σωρός μνήμης Αντικείμενα παράμετροι String Interning Αποθήκευση αντικειμένων Οι θέσεις μνήμης των αντικειμένων κρατάνε μια διεύθυνση στο

Διαβάστε περισσότερα

Εισαγωγή στον Προγραµµατισµό. Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011

Εισαγωγή στον Προγραµµατισµό. Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011 Εισαγωγή στον Προγραµµατισµό Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011 Hello World /* Αρχείο hello.c * Εµφανίζει στην οθόνη το * µήνυµα hello world */ #include

Διαβάστε περισσότερα

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

Η SQL αποτελείται από δύο υποσύνολα, τη DDL και τη DML. Κεφάλαιο 5 Η γλώσσα SQL 5.1 Εισαγωγή Η γλώσσα SQL (Structured Query Language) είναι η πιο διαδεδομένη διαλογική γλώσσα ερωταπαντήσεων που χρησιμοποιείται για την επικοινωνία του χρήστη με σχεσιακές ΒΔ.

Διαβάστε περισσότερα

ΕΠΛ131 Αρχές Προγραμματισμού

ΕΠΛ131 Αρχές Προγραμματισμού ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ131 Αρχές Προγραμματισμού Ακαδημαϊκό Έτος 2016/17 Χειμερινό Εξάμηνο ΕΝΔΙΑΜΕΣΗ ΕΞΕΤΑΣΗ ΗΜΕΡΟΜΗΝΙΑ: 29 Οκτωβρίου 2016 ΔΙΑΡΚΕΙΑ: 10:00πμ 12:30μμ ΑΙΘΟΥΣΕΣ: Κτήριο

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Διάλεξη 3η: Τύποι Μεταβλητών, Τελεστές, Είσοδος/Έξοδος

Διάλεξη 3η: Τύποι Μεταβλητών, Τελεστές, Είσοδος/Έξοδος Διάλεξη 3η: Τύποι Μεταβλητών, Τελεστές, Είσοδος/Έξοδος Τμήμα Επιστήμης Υπολογιστών, Πανεπιστήμιο Κρήτης Εισαγωγή στην Επιστήμη Υπολογιστών Βασίζεται σε διαφάνειες του Κ Παναγιωτάκη Πρατικάκης (CSD) Μεταβλητές,

Διαβάστε περισσότερα

BΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΕΞΕΤΑΣΗ ΦΕΒΡΟΥΑΡΙΟΥ 2013

BΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΕΞΕΤΑΣΗ ΦΕΒΡΟΥΑΡΙΟΥ 2013 1 2 3 ΟΝΟΜΑ ΣΥΝ Αρ. Μητρώου ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ BΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΕΞΕΤΑΣΗ ΦΕΒΡΟΥΑΡΙΟΥ 2013 Ι. Βασιλείου Τ. Σελλής -----------------------------------------------------------------------------------------------------

Διαβάστε περισσότερα

HY340, 2009 Α. Σαββίδης Slide 2 / 143. HY340, 2009 Α. Σαββίδης Slide 3 / 143. HY340, 2009 Α. Σαββίδης Slide 4 / 143

HY340, 2009 Α. Σαββίδης Slide 2 / 143. HY340, 2009 Α. Σαββίδης Slide 3 / 143. HY340, 2009 Α. Σαββίδης Slide 4 / 143 HY340 : ΓΛΩΣΣΕΣ ΚΑΙ ΜΕΤΑΦΡΑΣΤΕΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ, ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ, ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΓΙΣΤΩΝ HY340 : ΓΛΩΣΣΕΣ ΚΑΙ ΜΕΤΑΦΡΑΣΤΕΣ Φροντιστήριο 4ο Παραγωγή Ενδιάμεσου Κώδικα ΔΙΔΑΣΚΩΝ Αντώνιος Σαββίδης

Διαβάστε περισσότερα