2010-08-06 23 views
7

Ho installato Firebird 2.1 su Windows Xp e utilizzando il driver firebirdsql.jdbc-2.1.6 per connettermi con java. Codice:Connessione Firebird con java

Class.forName("org.firebirdsql.jdbc.FBDriver"); 

connection = DriverManager.getConnection(
    "jdbc:firebirdsql://localhost/3050//C:/firebird/database/EMPLOYEE.FDB", 
    "test","test"); 

sto ottenendo seguente errore:

 
Caused by: org.firebirdsql.jdbc.FBSQLException: GDS Exception. 335544375. 
unavailable database 
Reason: unavailable database at 
org.firebirdsql.jdbc.FBDataSource.getConnection(FBDataSource.java:122) at 
org.firebirdsql.jdbc.FBDriver.connect(FBDriver.java:140) at 
java.sql.DriverManager.getConnection(DriverManager.java:525) at 
java.sql.DriverManager.getConnection(DriverManager.java:171) 

prega di aiuto.

Problema risolto: In realtà ho avuto problemi con file jar che ho ricevuto da

http://mirrors.ibiblio.org/pub/mirrors/maven2

ho scaricato JayBird-full-2.1.6.jar dal sito di Firebird ufficiale ed il problema ma ho risolto.

URL corretto è

"jdbc:firebirdsql://localhost:3050/C:\\firebird\\database\\EMPLOYEE.FDB" 

ho provato questo URL in precedenza anche, ma non funzionava in causa di problema vaso.

+0

codice riformattato; per favore, ripristina se non è corretto. – trashgod

+0

Grazie per la formattazione! –

+1

Non aggiungere una sezione "Problema risolto" alla domanda, inserirla invece come risposta e accettarla. Grazie! – bluish

risposta

0

L'URL è probabilmente rotto per questo driver.

Collegare la sorgente effettiva al contenitore e impostare un punto di interruzione in FBDataSource.getConnection (...) e verificare quali valori sono effettivamente presenti quando viene tentata la connessione.

Sei assolutamente certo che la combinazione di un nome host con porta concorda con un percorso per il file FDB?

+0

Sono assolutamente sicuro dei parametri di connessione e del percorso del file FDB. –

1

Come osserva @ Thorbjørn Ravn Andersen, il tuo Jaybird JDBC URL non è corretto. La sintassi è jdbc:firebirdsql:[host[/port]:]<database>. Hai bisogno di due punti tra l'host/porta e il percorso del database. Forse qualcosa del genere:

"jdbc:firebirdsql://localhost/3050:C:\\firebird\database\EMPLOYEE.FDB" 

Oops, ho lasciato nelle barre iniziali; provare questo:

"jdbc:firebirdsql:localhost/3050:C:\\firebird\database\EMPLOYEE.FDB" 

Addendum: Si potrebbe correre attraverso la lista common errors. Inoltre, i miei file di database firebird terminano in .fdb, ma le domande frequenti sono .gdb. Non può far male a controllare.

+0

ho provato tutte le opzioni tra cui URL specificato dal you..nothing sta lavorando .. –

+0

E' Firebird in esecuzione sulla porta 3050? Puoi connetterti con qualsiasi altro mezzo, ad es. isql o un client GUI? – trashgod

+0

posso collegare con isql e flameRobin..it è in esecuzione su 3050 port..I hanno provato a generare un nuovo database..switching fuori finestre firewall..copying DLL nel sistema a 32 (come specificato sul gruppo di supporto Firebird) .. –

0

Per connettersi al database situato sulla macchina remota o nuvola (linux) quindi utilizzare seguente link.

jdbc: FirebirdSQL: 34.212.208.251/3050: /opt/app/db/sample_training.fdb