Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 18

Discussione: Java con SQL Oracle

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    213

    Java con SQL Oracle

    Avrei un piccolo problemino

    Ho messo su una classe per collegarmi al db oracle in locale in questo modo:

    codice:
    public class DataBase {
    	/**
    	 * Attributi della classe
    	 */
    	private Connection connection = null;
    	private Statement cmd;
    	
    	/**
    	 * Costruttore della classe
    	 */
    	public DataBase() {
    		setDriver();
    		setConnection();
    	}
    	
    	/**
    	 * Metodo per impostare i driver del db
    	 */
    	private void setDriver() {
    		try {
    			Class.forName(ConDataBase.DB_DRIVER);
    		} catch (ClassNotFoundException e) {
    			e.printStackTrace();
    			return;
    		}
    	}
    	
    	/**
    	 * Metodo per la connessione al db
    	 */
    	private void setConnection() {
    		try {
    			
    			connection = DriverManager.getConnection(ConDataBase.DB_URL, ConDataBase.DB_USERNAME,ConDataBase.DB_PASSWORD);
    			cmd = connection.createStatement();
    		} catch (SQLException e) {
    			e.printStackTrace();
    			return;
    		}
    	}
    	
    	/**
    	 * Metodo getter per prendere la connessione
    	 * @return la connessione
    	 */
    	public Connection getConnection() {
    		return connection;
    	}
    	
    	/**
    	 * Metodo getter per lo statement.
    	 * @return lo statement
    	 */
    	public Statement getCmd () {
    		return cmd;
    	}
    	
    	/**
    	 * Metodo per chiudere la connessione.
    	 */
    	public void CloseConnectionToDB() {
    		try {
    			cmd.close();
    			connection.close();
    		} catch (SQLException e) {
    			e.printStackTrace();
    			return;
    		}
    	}
    }
    In un'altra classe ho fatto una semplice prova per estrarre dei dati da questo db usando questa classe ma purtroppo non ho segnali ne positivi ne negativi rimane tutto invariato. L'ho fatto in questo modo molto semplice da capire credo:

    codice:
    		DataBase connessione = new DataBase();
    		Statement statement = connessione.getCmd();
    		String qry = "SELECT * FROM PRODOTTO WHERE ID_PRODOTTO='0'";
    		ResultSet res;
    		try {
    			res = statement.executeQuery(qry);
    			while(res.next()) {
    			String testt = res.getString("NOME");
    			JLabel testo1 = new JLabel(testt);
    			GridBagConstraints gbc3 = new GridBagConstraints();
    			gbc3.gridy = 1;
    			gbc3.gridx = 1;
    			midListMenuPanel.add(testo1,  gbc3);
    		}
    		} catch (SQLException e) {
    			e.printStackTrace();
    			return;
    		}
    Una semplice prova che inserisco in un pannello che ho già e funziona bene ma il problema è che aggiungendo questa parte per provare non mi inserisce nulla...Cosa potrei sbagliare?

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Non hai nessuna eccezione?


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    213
    No, assolutamente...E' questa la cosa strana...

  4. #4
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Prova a modificare l'istruzione SQL in questo modo (non dovrebbe essere necessario, ma le vie dell'informatica sono infinite):

    codice:
    String qry = "SELECT * FROM PRODOTTO WHERE ID_PRODOTTO='0';";

    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    213
    Ora mi da l'errore di invalid character...

  6. #6
    riesci a mostrare l'URL?
    I computer sono incredibilmente veloci, accurati e stupidi.
    Gli uomini sono incredibilmente lenti, inaccurati e intelligenti.
    Insieme sono una potenza che supera l'immaginazione.

    A.Einstein

  7. #7
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    213
    Intendi questo?

    codice:
    jdbc:oracle:thin:@localhost:1521:XE

  8. #8
    esattamente
    Questo ovviamente è il driver oracle.jdbc.driver.OracleDriver che credo che hai scaricato (in formato jar) e inserito nel progetto come libreria esterna
    Questo è l'URL
    jdbc:oracle:thin:@localhost:1521:nomeSID
    Dovrebbe essere tutto giusto.
    L'ultima parte è quella che mi lascia un po perplesso.
    Solitamente li va il nome SID del database oppure il nome del servizio.
    Quindi se il nome del tuo schema l'hai chiamato XE allora va bene, diversamente comunque dovrebbe darti un problema e lanciarti un eccezione.
    I computer sono incredibilmente veloci, accurati e stupidi.
    Gli uomini sono incredibilmente lenti, inaccurati e intelligenti.
    Insieme sono una potenza che supera l'immaginazione.

    A.Einstein

  9. #9
    Ciao,

    Penso che puoi prendere un occhiata su questa documentazione. Qui puoi trovare tutte le informazioni necessarie di connettersi al database usando java.

    Cristiana,
    #OracleCloud

  10. #10
    Ma una domanda semplice ma sei sicuro che quella query ti debba per forza restituire dei dati ?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.