Проблема с подключением Java к базе данных sybase - PullRequest
0 голосов
/ 18 мая 2018

Я хочу создать соединение с Sybase DB в Java-приложении.Я добавил jconn4.jar в свой проект, но когда я подключаюсь к БД в коде, у меня возникает исключение 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, у меня также возникает та же ошибка.

Ответы [ 2 ]

0 голосов
/ 21 мая 2018

Итак, другой драйвер типа jdbc разрешил мою проблему - я подключил драйвер sajdbcX и изменил строку подключения:

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

Итак, спасибо Марку Роттвилу за совет - я удалил код реестра драйвера как избыточный.И спасибо всем за идеи.

0 голосов
/ 18 мая 2018

Убедитесь, что у вас есть уважаемые банки, включенные в ваш путь к классам.Следующее работает для меня:

Используйте 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");

Следующая ссылка поможет вам в установке драйверов: Как подключить базу данных Sybase с помощью кода Java в NetBeans?

...