繁体   English   中英

sybase Java DB连接问题

[英]sybase java DB connection issue

我想在Java应用程序中创建sybase数据库连接。 我已经将jconn4.jar添加到我的项目中,但是当我使用代码连接到数据库时,我遇到了ClassNotFoundException: com.sybase.jdbc4.jdbc.SybDriver异常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

我做错了什么? ADDED此外,当我试图通过创建数据库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");

因此,也向Mark Rotteveel征求意见-我删除了驱动程序注册代码,以使其成为替代品。 并感谢大家的想法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM