Java e database SQL

di il
4 risposte

Java e database SQL

Salve a tutti! Dovrei interfacciare il mio programma in Java con un datatase fatto in MySql. Che codice devo scrivere? Ho provato con codici trovati su internet ma senza risultati. Chi mi aiuta? o cmq dove posso trovare informazioni più semplici e comprensibili????
Grazie!!!


4 Risposte

  • Re: Java e database SQL

    Ciao hai provato ad utilizzare questo codice per aprire un database?
    
    import java.sql.*;
    public int Connetti(String username,String Password, String NomeDb)
    	{
    		try
    		{
    			Class.forName("com.mysql.jdbc.Driver").newInstance();
    		}
    		catch(Exception e)
    		{
    			return -1;			
    		}
    		try
    		{
    		////// usa questa riga nel caso la connessione con il database non necessita di nome utente e password
                   /////db = DriverManager.getConnection("jdbc:mysql://localhost/nomedb");
    		db = DriverManager.getConnection("jdbc:mysql://localhost/" + NomeDb+ "?user="+username+"&password="+Password);
    		}
    		catch(Exception e)
    		{
    			return -1;
    			
    		}
    		return 1;
    	}
    
    
    se non hai problemi, ti posto il resto del codice.
  • Re: Java e database SQL

    Grazie! Appena lo provo ti faccio sapere di eventuali problemi quindi ogni tanto controlla qua ! Quale altra parte manca...che dovresti mandarmi?
    Sono nella completa confusione con Java e questa è solo una piccola parte del problema.
    Grazie mille intanto.
    Ciao
  • Re: Java e database SQL

    L'ho provato e non mi dà nessun errore finalmente!!!
    Puoi mandarmi l'altra parte?
    Grazie mille!!!
  • Re: Java e database SQL

    Quel codice serve solo per aprire una connessione con il database, restituisce 1 nel caso è andato tutto bene, -1 al contrario.
    Nel codice precedente ho scordato di dirti di scrivere
    
    private Connection db;
    magari lo metti tra i membri della classe.
    Per chiudere adesso la connessione con il database fai
    
    public void disconnetti()
    {
       db.close();
    }
    
    per eseguire le query invece la cosa è un po + complicata, prova a fare cosi, per una query del tipo SELECT.
    
    public int EseguiQuery(String query)
    	{
    	int value;
    	String[] record;
    	int colonne = 0;
    	int i=0;
    	 try {
    	         Statement stmt = db.createStatement();     // Creo lo Statement per l'esecuzione della query
    	         ResultSet rs = stmt.executeQuery(query);   // Ottengo il ResultSet dell'esecuzione della query
    	         ResultSetMetaData rsmd = rs.getMetaData();
    	         colonne = rsmd.getColumnCount();
    	         record=new String[colonne];
    	         while(rs.next())
    	        {
    	           record[i]= rs.getString(i+1);
    	           i++;
    	        }
    	         rs.close();     // Chiudo il ResultSet
    		     stmt.close();   // Chiudo lo Statement
    	        value=1;
    	     }
    	    catch(Exception e)
    	   {
    	     value=-1;
    	    
    	   }
    	     
    	     return value;
    
    	}
    
    prova in questo modo.
    Ciao ciao.
Devi accedere o registrarti per scrivere nel forum
4 risposte