Guida MySQL: Accesso a MySQL da Java
http://www.swprog.com/guide/mysql-java-rw.php
19 Novembre 2007 Database





Accesso in Lettura

Sia la tabella seguente quella a cui si vuole accedere in lettura

  1. id int
  2. cognome char(25)
  3. nome char (25)
  4. eta int

La classe che accede a questa tabella e ne stampa le righe è la seguente

rdata.java
  1. import java.sql.*;
  2.  
  3. public class rdata
  4. {
  5.  
  6. public static void main(String argv[]) throws Exception
  7. {
  8. try
  9. {
  10. Class.forName("org.gjt.mm.mysql.Driver");
  11. }
  12. catch (Exception exc)
  13. {
  14. System.out.println("Errore - Driver jdbc non presente: "+
  15. exc.getMessage());
  16. }
  17.  
  18. try
  19. {
  20. Connection conn = DriverManager.getConnection(
  21. "jdbc:mysql:///basedati",
  22. "root",
  23. "password"
  24. );
  25.  
  26. Statement stmt = conn.createStatement();
  27. ResultSet rset = stmt.executeQuery("SELECT * FROM dati WHERE eta > 18;");
  28. while (rset.next())
  29. {
  30. System.out.println("ID "+rset.getInt("id"));
  31. System.out.println("Cognome "+rset.getString("cognome"));
  32. System.out.println("Nome "+rset.getString("nome"));
  33. System.out.println("Età "+rset.getInt("eta"));
  34. }
  35.  
  36. rset.close();
  37. stmt.close();
  38. conn.close();
  39. }
  40. catch (Exception exc)
  41. {
  42. System.out.println("Errore: "+ exc.getMessage());
  43. }
  44. }
  45. }


Accesso in Scrittura

Sia la tabella seguente quella a cui si vuole accedere in scrittura

  1. id int
  2. cognome char(25)
  3. nome char (25)
  4. eta int

La classe riceve in input i dati e li inserisce nella tabella è la seguente

wdata.java
  1. import java.sql.*;
  2.  
  3. public class rdata
  4. {
  5.  
  6. public static void main(String argv[]) throws Exception
  7. {
  8. try
  9. {
  10. Class.forName("org.gjt.mm.mysql.Driver");
  11. }
  12. catch (Exception exc)
  13. {
  14. System.out.println("Errore - Driver jdbc non presente: "+
  15. exc.getMessage());
  16. }
  17.  
  18. try
  19. {
  20. Connection conn = DriverManager.getConnection(
  21. "jdbc:mysql:///basedati",
  22. "root",
  23. "password"
  24. );
  25.  
  26. BufferedReader keyb = new BufferedReader(
  27. new InputStreamReader(System.in));
  28.  
  29. Statement stmt = conn.createStatement();
  30.  
  31. System.out.println("Inserire l'ID ");
  32. String id = keyb.readLine();
  33. System.out.println("Inserire il Cognome ");
  34. String cognome = keyb.readLine();
  35. System.out.println("Inserire il Nome ");
  36. String nome = keyb.readLine();
  37. System.out.println("Inserire l'età ");
  38. String eta = keyb.readLine();
  39.  
  40. ResultSet rset = stmt.executeQuery("INSERT INTO dati(id, cognome, nome,
  41. eta) VALUES ('"+id"', '"+cognome"', '"+nome"', '"+
  42. eta+"')");
  43.  
  44. rset.close();
  45. stmt.close();
  46. conn.close();
  47. }
  48. catch (Exception exc)
  49. {
  50. System.out.println("Errore: "+ exc.getMessage());
  51. }
  52. }
  53. }


 
Guida MySQL