Buongiorno.
Sto cercando di effettuare una connessione a db Oracle 11g.
Come faccio a trovare il driver corretto da mettere nelle librerie di un progetto in eclipse?
E dove posso reperire la classe di connessione?
Grazie
Buongiorno.
Sto cercando di effettuare una connessione a db Oracle 11g.
Come faccio a trovare il driver corretto da mettere nelle librerie di un progetto in eclipse?
E dove posso reperire la classe di connessione?
Grazie
hai provato a cercare online??
perchè a me una veloce ricerca sul web mi ha portato a questo: http://www.tutorialspoint.com/jdbc/j...onnections.htm
oppure hai un problema specifico??
Se il problema principale è reperire il jar ... basta vedere sul sito Oracle:
http://www.oracle.com/technetwork/da...ex-091264.html
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
Qui di seguito è quello che ho creato come classe ed l'errore che mi genera:
Nella console:codice:import java.sql.*; public class TestDBOracle { public static void main(String[] args) throws ClassNotFoundException, SQLException { Class.forName("oracle.jdbc.driver.OracleDriver"); String URL = "jdbc:oracle:thin:@//localhost:8080/apex"; String USER = "max1234"; String PASS = "1234"; Connection conn = DriverManager.getConnection(URL, USER, PASS); conn.setAutoCommit(false); Statement stmt = conn.createStatement(); ResultSet rset = stmt.executeQuery("select * from persona"); while (rset.next()) { System.out.println (rset.getString(1)); } stmt.close(); System.out.println ("Ok."); } }
codice:Exception in thread "main" java.sql.SQLRecoverableException: IO Error: Got minus one from a read call at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:489) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:553) at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:254) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:528) at java.sql.DriverManager.getConnection(Unknown Source) at java.sql.DriverManager.getConnection(Unknown Source) at TestDBOracle.main(TestDBOracle.java:12) Caused by: oracle.net.ns.NetException: Got minus one from a read call at oracle.net.ns.Packet.receive(Packet.java:311) at oracle.net.ns.NSProtocol.connect(NSProtocol.java:300) at oracle.jdbc.driver.T4CConnection.connect(T4CConnection.java:1140) at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:340) ... 7 more
leggendo qua e la velocemente:
-il server non è configurato per connessioni esterne
-l'url di connessione è sbagliato
-troppe connessioni attive e la tua viene rifiutata (in caso controlla il numero massimo di connessioni)
Il url non mi "quadra" molto .... localhost:8080 è più qualcosa riferito ad un web server (es. un Tomcat in locale sulla 8080 o l'application server di Oracle).
Vedi una FAQ di Oracle sul thin driver: http://www.orafaq.com/wiki/JDBC#Thin_driver
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
Si quello che non riesco a capire e come configurare l'url.
Sto lavorando in locale e vorrei capire che porta sto usando.
dovrebbe essere la 1521
solitamente la stringa di connessione è la seguente
jdbc:oracle:thin:@serverName:portNumber:sid
dove serverName è il tuo localhost
portNumber solitamente è la 1521
sid: nome unico di un'istanza del tuo DB
Ciao.
Ultima modifica di schumy2000; 05-08-2015 a 11:39
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
Invece potrebbe essere un problema di driver.