我正在尝试使用interbase
连接到旧版jdbc
数据库,这是我的代码
try {
Class.forName("interbase.interclient.Driver");
Connection connection = DriverManager.getConnection("jdbc:interbase://localhost/k1500.gdb","usrname","password");
Statement statement = connection.createStatement();
statement.execute("Select * from myTable");
ResultSet set = statement.getResultSet();
}catch (Exception ex){
ex.printStackTrace();
}
我得到这个例外:
interbase.interclient.UnlicensedComponentException: [interclient] Unlicensed component: This version of InterClient refuses communication with InterBase version WI-V7.1.0.131/tcp
See API reference for exception interbase.interclient.UnlicensedComponentException
at interbase.interclient.Connection.remote_ATTACH_DATABASE(Unknown Source)
at interbase.interclient.Connection.connect(Unknown Source)
at interbase.interclient.Connection.<init>(Unknown Source)
at interbase.interclient.Driver.connect(Unknown Source)
at java.sql.DriverManager.getConnection(DriverManager.java:664)
at java.sql.DriverManager.getConnection(DriverManager.java:247)
at Application.main(Application.java:13)
有人可以帮我解决这个问题吗?
最佳答案
您需要获得适当版本的Interbase的许可证。 (事实上,您使用的是“旧版”版本不会改变这一点。)
文章Licensing and Installation of InterBase 7解释了不同种类的Interbase许可证,以及如何安装它们。
Embarcadero网站介绍了如何获取Interbase许可证。如果您在查找所需版本时遇到困难,建议您使用Request a Quote表单。
您的组织可能已经/仍然拥有许可证,而您/他们错放了许可证。
关于java - Interbase DB JDBC连接,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53995470/