powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Не работает JdbcOdbc драйвер
21 сообщений из 21, страница 1 из 1
Не работает JdbcOdbc драйвер
    #38375868
nickstarnew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Доброго времени суток!
Пытаюсь реализовать связь из Java с базой данных Access
Прописал в Odbs32 файл MS.accdb
Подготовил соответствующий класс

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
package nutdb;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class NutConnODBC {
	public Connection  DBCONN;
	public String DBURL="jdbc:odbc:MS";
	
	public void Open(){
		try {
			Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
			System.out.println(DBURL);
			DBCONN=DriverManager.getConnection(DBURL, "", "");
			if(DBCONN!=null){
				System.out.println("DB connect OK");
			}else{
				System.out.println("DB connect failed");
			}
		}catch(ClassNotFoundException ex){
			System.out.println("DB connect failed ClassNotFoundException");			
		}catch(SQLException ex){
			System.out.println(ex.getErrorCode());
			System.out.println(ex.getMessage());

		}
	}
}


пробую выполнить
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
package nutdb;

import java.sql.SQLException;

import nutsql.NutSql;

public class test {

	public static void main(String[] args) {
		NutConnODBC db = new NutConnODBC();
		db.Open();
	}

}



Прога возвращает
Код: plaintext
1.
2.
jdbc:odbc:MS
0
[Microsoft][Диспетчер драйверов ODBC] В указанном DSN архитектура драйвера и архитектура приложения не соответствуют друг другу.

Что не так?
...
Рейтинг: 0 / 0
Не работает JdbcOdbc драйвер
    #38375914
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Винда x64?
...
Рейтинг: 0 / 0
Не работает JdbcOdbc драйвер
    #38375921
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гуглите по тексту ошибки. Java, кажется, тут не причем. Это скорее настройки офиса и ODBC источников данных в x64 системе.
...
Рейтинг: 0 / 0
Не работает JdbcOdbc драйвер
    #38375922
nickstarnew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczВинда x64?

Да, восьмерка
...
Рейтинг: 0 / 0
Не работает JdbcOdbc драйвер
    #38483193
nickstarnew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczВинда x64?

Предполагается, что приложение будет универсальным, и может работать как с 32 так и с 64 разрядной системой. Как мне модифицировать класс, что бы он сам выбирал как подключаться в частном случае?
...
Рейтинг: 0 / 0
Не работает JdbcOdbc драйвер
    #38483202
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Убедитесь что используется 32-битная Java.
...
Рейтинг: 0 / 0
Не работает JdbcOdbc драйвер
    #38483697
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nickstarnewBlazkowiczВинда x64?

Предполагается, что приложение будет универсальным, и может работать как с 32 так и с 64 разрядной системой. Как мне модифицировать класс, что бы он сам выбирал как подключаться в частном случае?
Пару лет назад мне попался pure-Java драйвер. Не мостового типа. Ни названия ни производителя
я не помню. Ну вобщем открывал он аксессовские mdb файлы успешно.

Возможно это он. Вобщем проверьте.
http://jackcess.sourceforge.net/
...
Рейтинг: 0 / 0
Не работает JdbcOdbc драйвер
    #38483840
nickstarnew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonnickstarnewпропущено...


Предполагается, что приложение будет универсальным, и может работать как с 32 так и с 64 разрядной системой. Как мне модифицировать класс, что бы он сам выбирал как подключаться в частном случае?
Пару лет назад мне попался pure-Java драйвер. Не мостового типа. Ни названия ни производителя
я не помню. Ну вобщем открывал он аксессовские mdb файлы успешно.

Возможно это он. Вобщем проверьте.
http://jackcess.sourceforge.net/

Пробую:

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
package nuttest;

import java.io.File;
import java.io.IOException;

import com.healthmarketscience.jackcess.Database;
import com.healthmarketscience.jackcess.DatabaseBuilder;

public class Test {

	/**
	 * @param args
	 * @throws IOException 
	 */
	public static void main(String[] args) throws IOException {
		Database db = DatabaseBuilder.open(new File("C:\\test.accdb"));
		
	}

}



Но при попытке выполнить выдает ошибку:

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
	at com.healthmarketscience.jackcess.impl.DatabaseImpl.<clinit>(DatabaseImpl.java:89)
	at com.healthmarketscience.jackcess.DatabaseBuilder.open(DatabaseBuilder.java:170)
	at com.healthmarketscience.jackcess.DatabaseBuilder.open(DatabaseBuilder.java:193)
	at nuttest.Test.main(Test.java:16)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.logging.LogFactory
	at java.net.URLClassLoader$1.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	... 4 more


Не понимаю в чем дело?
...
Рейтинг: 0 / 0
Не работает JdbcOdbc драйвер
    #38483857
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jackcess использует Apache Commons Logging. Возможно и другие библиотеки, которые стоит подключить к проекту.
...
Рейтинг: 0 / 0
Не работает JdbcOdbc драйвер
    #38483870
nickstarnew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowiczjackcess использует Apache Commons Logging. Возможно и другие библиотеки, которые стоит подключить к проекту.

У меня открыт в Eclipse как WebProject, откуда взять и как подключить эти бибилиотеки?
...
Рейтинг: 0 / 0
Не работает JdbcOdbc драйвер
    #38483878
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nickstarnew, качай отсюдова http://commons.apache.org/proper/commons-logging/
...
Рейтинг: 0 / 0
Не работает JdbcOdbc драйвер
    #38483902
nickstarnew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonnickstarnew, качай отсюдова http://commons.apache.org/proper/commons-logging/

Как он меня достал!

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/lang/builder/CompareToBuilder
	at com.healthmarketscience.jackcess.impl.RowIdImpl.compareTo(RowIdImpl.java:113)
	at com.healthmarketscience.jackcess.impl.IndexData$Entry.compareTo(IndexData.java:1838)
	at com.healthmarketscience.jackcess.impl.IndexData$Entry.compareTo(IndexData.java:1646)
	at java.util.Collections.indexedBinarySearch(Unknown Source)
	at java.util.Collections.binarySearch(Unknown Source)
	at com.healthmarketscience.jackcess.impl.IndexData$DataPage.findEntry(IndexData.java:2368)
	at com.healthmarketscience.jackcess.impl.IndexData.findEntryPosition(IndexData.java:722)
	at com.healthmarketscience.jackcess.impl.IndexData.access$3300(IndexData.java:56)
	at com.healthmarketscience.jackcess.impl.IndexData$EntryCursor.updatePosition(IndexData.java:2133)
	at com.healthmarketscience.jackcess.impl.IndexData$EntryCursor.restorePosition(IndexData.java:2072)
	at com.healthmarketscience.jackcess.impl.IndexData$EntryCursor.restorePosition(IndexData.java:2055)
	at com.healthmarketscience.jackcess.impl.IndexData$EntryCursor.beforeEntry(IndexData.java:2017)
	at com.healthmarketscience.jackcess.impl.IndexCursorImpl.findPotentialRow(IndexCursorImpl.java:368)
	at com.healthmarketscience.jackcess.impl.IndexCursorImpl.findFirstRowByEntryImpl(IndexCursorImpl.java:262)
	at com.healthmarketscience.jackcess.impl.IndexCursorImpl.findFirstRowByEntry(IndexCursorImpl.java:135)
	at com.healthmarketscience.jackcess.impl.DatabaseImpl$DefaultTableFinder.findRow(DatabaseImpl.java:1890)
	at com.healthmarketscience.jackcess.impl.DatabaseImpl$TableFinder.findObjectId(DatabaseImpl.java:1799)
	at com.healthmarketscience.jackcess.impl.DatabaseImpl.readSystemCatalog(DatabaseImpl.java:804)
	at com.healthmarketscience.jackcess.impl.DatabaseImpl.<init>(DatabaseImpl.java:513)
	at com.healthmarketscience.jackcess.impl.DatabaseImpl.open(DatabaseImpl.java:386)
	at com.healthmarketscience.jackcess.DatabaseBuilder.open(DatabaseBuilder.java:170)
	at com.healthmarketscience.jackcess.DatabaseBuilder.open(DatabaseBuilder.java:193)
	at nuttest.Test.main(Test.java:16)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.lang.builder.CompareToBuilder
	at java.net.URLClassLoader$1.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	... 23 more



Что ему опять не хватает?
...
Рейтинг: 0 / 0
Не работает JdbcOdbc драйвер
    #38483907
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Apache Commons Lang, очевидно же.
...
Рейтинг: 0 / 0
Не работает JdbcOdbc драйвер
    #38483925
nickstarnew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczApache Commons Lang, очевидно же.

ОГРОМНОЕ СПАСИБО, ВСЕ ЗАРАБОТАЛО!!!
...
Рейтинг: 0 / 0
Не работает JdbcOdbc драйвер
    #38483938
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nickstarnew, удали из favorities вконтактики и фейсбуки. И сделай ccылку на Apache Commons!

Реально.
...
Рейтинг: 0 / 0
Не работает JdbcOdbc драйвер
    #38484010
nickstarnew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonnickstarnew, удали из favorities вконтактики и фейсбуки. И сделай ccылку на Apache Commons!

Реально.

А вот SQL запросы эта библиотека, похоже, не может воспринимать?
...
Рейтинг: 0 / 0
Не работает JdbcOdbc драйвер
    #38484077
nickstarnew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nickstarnew,
значит варианта http://jackcess.sourceforge.net/ мне не подходит, пробую по другому:

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
package nuttest;

import java.sql.Connection;
import java.sql.DriverManager;


public class testODBC {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		
		try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 
		String accdb = "jdbc:odbc:Driver={Microsoft Access Driver (*.accdb)};DBQ=c:\\test.accdb";
		Connection conn = DriverManager.getConnection(accdb); 

		}catch(Exception e){
			System.out.println(e.getMessage());
		} 
		
	}
}


Но опять болт:

Код: java
1.
[Microsoft][Диспетчер драйверов ODBC] Источник данных не найден и не указан драйвер, используемый по умолчанию



Как все же обойти ошибку?
...
Рейтинг: 0 / 0
Не работает JdbcOdbc драйвер
    #38484081
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nickstarnew,

вот эту строчку ты откудова взял?

Код: java
1.
"Microsoft Access Driver (*.accdb)"
...
Рейтинг: 0 / 0
Не работает JdbcOdbc драйвер
    #38484095
nickstarnew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonnickstarnew,

вот эту строчку ты откудова взял?

Код: java
1.
"Microsoft Access Driver (*.accdb)"



Вставил из примера.
...
Рейтинг: 0 / 0
Не работает JdbcOdbc драйвер
    #38484146
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хм... мне кажется есть еще вариант что он может называться по другому.
Если эта строчка - копи-паста с панели управления то у меня она называется
по другому.
...
Рейтинг: 0 / 0
Не работает JdbcOdbc драйвер
    #38484266
nickstarnew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonХм... мне кажется есть еще вариант что он может называться по другому.
Если эта строчка - копи-паста с панели управления то у меня она называется
по другому.

Все тоже самое.
...
Рейтинг: 0 / 0
21 сообщений из 21, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Не работает JdbcOdbc драйвер
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]