sybase java DB 连接问题



我想在java应用程序中创建sybase DB连接。 我已经将 jconn4.jar 添加到我的项目中,但是当我在代码中连接到 DB 时,我有异常ClassNotFoundException: com.sybase.jdbc4.jdbc.SybDriver. 我的连接:

SqlConnect() {
try {
DriverManager.registerDriver(new com.sybase.jdbc4.jdbc.SybDriver());
} catch (SQLException e) {
System.err.println("SQL exception  " + e.getMessage());
}
}

而且

public void connect() {
try {
connection = DriverManager.getConnection("jdbc:sybase:Tds:localhost:5000", "DBA", "sql");
connection.setAutoCommit(false);
} catch (SQLException e) {
}
}

我想连接到演示PowerBuilder数据库,参数:

DSN=EAS Demo DB V125;UID=dba;PWD=sql

我做错了什么?添加此外,当我尝试通过 intelij 数据库工作插件创建数据库连接时,我也遇到了同样的错误。

确保类路径中包含受人尊敬的 jar。 以下内容对我有用:

使用Class.forname加载驱动程序

推荐方法:

Class.forName("sybase.jdbc.sqlanywhere.IDriver")
con = DriverManager.getConnection("jdbc:sqlanywhere:uid=DBA;pwd=sql");

另一种方式:

DriverManager.registerDriver((Driver) Class.forName("sybase.jdbc.sqlanywhere.IDriver").newInstance());
con = DriverManager.getConnection("jdbc:sqlanywhere:uid=DBA;pwd=sql");

以下链接将帮助您安装驱动程序: 如何在 NetBeans 中使用 Java 代码连接 Sybase 数据库?

因此,另一个 jdbc 类型的驱动程序解决了我的问题 - 我连接了 sajdbcX 驱动程序并更改了连接字符串:

connection = DriverManager.getConnection("jdbc:sqlanywhere:uid=DBA;pwd=sql");

所以,也感谢马克·罗特维尔的建议 - 我删除了驱动程序注册代码作为 redurdrant。 并感谢大家的想法。

最新更新