2010-08-06 92 views
7

我已经在windows xp上安装了Firebird 2.1并使用firebirdsql.jdbc-2.1.6驱动程序与java连接。代码:与java的火鸟连接

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

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

我收到以下错误:

 
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) 

请帮助。

问题解决了: 其实我有jar文件的问题,我从

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

了我下载jaybird-全2.1.6.jar从火鸟官方网站和问题得到有效解决。

正确的网址是

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

我想这个网址也较早,但它不工作怎么一回事,因为罐子问题。

+0

重新格式化的代码;如果不正确请回复。 – trashgod 2010-08-06 16:42:33

+0

感谢您的格式化! – 2010-08-06 16:56:56

+1

不要为问题添加“问题解决”部分,而是将其作为答案发布,然后接受它。谢谢! – bluish 2011-05-26 08:07:50

回答

0

您的网址很有可能是该驱动程序损坏的。

将实际源添加到jar并在FBDataSource.getConnection(...)中设置断点,并查看尝试建立连接时实际存在的值。

您是否完全确定主机名与端口的组合是否与FDB文件的路径一致?

+0

我是absolutley确定连接参数以及FDB文件的路径。 – 2010-08-06 13:44:42

1

As @ThorbjørnRavn Andersen指出,您的Jaybird JDBC URL不正确。语法是jdbc:firebirdsql:[host[/port]:]<database>。在主机/端口和数据库路径之间需要冒号。也许这样的事情:

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

哎呀,我留在领先的斜线;试试这个:

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

附录:您可以通过下面的common errors列表运行。此外,我的火鸟数据库文件在.fdb结束,但常见问题解答提到.gdb。检查无损伤。

+0

我已经尝试过所有的选项,包括由您指定的网址..没有正在工作.. – 2010-08-06 16:07:55

+0

火鸟运行在3050端口?您可以通过任何其他方式进行连接,例如isql还是一个GUI客户端? – trashgod 2010-08-06 16:40:35

+0

我可以连接isql和flameRobin..it在3050端口上运行..我试图创建一个新的数据库..关闭Windows防火墙..复制系统32中的dll(在firebird支持组上指定).. – 2010-08-06 16:54:57

0

要连接到位于远程机器或云(linux)上的数据库,请使用以下链接。

JDBC:firebirdsql:34.212.208.251/3050:/opt/app/db/sample_training.fdb