Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Не работает JdbcOdbc драйвер / 21 сообщений из 21, страница 1 из 1
23.08.2013, 14:18:11
    #38375868
nickstarnew
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает JdbcOdbc драйвер
Доброго времени суток!
Пытаюсь реализовать связь из 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
23.08.2013, 14:41:46
    #38375914
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает JdbcOdbc драйвер
Винда x64?
...
Рейтинг: 0 / 0
23.08.2013, 14:46:09
    #38375921
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает JdbcOdbc драйвер
Гуглите по тексту ошибки. Java, кажется, тут не причем. Это скорее настройки офиса и ODBC источников данных в x64 системе.
...
Рейтинг: 0 / 0
23.08.2013, 14:46:12
    #38375922
nickstarnew
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает JdbcOdbc драйвер
BlazkowiczВинда x64?

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

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

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

Возможно это он. Вобщем проверьте.
http://jackcess.sourceforge.net/
...
Рейтинг: 0 / 0
29.11.2013, 17:56:48
    #38483840
nickstarnew
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает JdbcOdbc драйвер
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
29.11.2013, 18:06:07
    #38483857
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает JdbcOdbc драйвер
jackcess использует Apache Commons Logging. Возможно и другие библиотеки, которые стоит подключить к проекту.
...
Рейтинг: 0 / 0
29.11.2013, 18:10:51
    #38483870
nickstarnew
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает JdbcOdbc драйвер
Blazkowiczjackcess использует Apache Commons Logging. Возможно и другие библиотеки, которые стоит подключить к проекту.

У меня открыт в Eclipse как WebProject, откуда взять и как подключить эти бибилиотеки?
...
Рейтинг: 0 / 0
29.11.2013, 18:13:52
    #38483878
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает JdbcOdbc драйвер
nickstarnew, качай отсюдова http://commons.apache.org/proper/commons-logging/
...
Рейтинг: 0 / 0
29.11.2013, 18:25:08
    #38483902
nickstarnew
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает JdbcOdbc драйвер
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
29.11.2013, 18:28:43
    #38483907
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает JdbcOdbc драйвер
Apache Commons Lang, очевидно же.
...
Рейтинг: 0 / 0
29.11.2013, 18:35:48
    #38483925
nickstarnew
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает JdbcOdbc драйвер
BlazkowiczApache Commons Lang, очевидно же.

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

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

Реально.

А вот SQL запросы эта библиотека, похоже, не может воспринимать?
...
Рейтинг: 0 / 0
29.11.2013, 20:31:24
    #38484077
nickstarnew
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает JdbcOdbc драйвер
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
29.11.2013, 20:35:05
    #38484081
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает JdbcOdbc драйвер
nickstarnew,

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

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

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

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



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

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


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