Error incrompensible, ayuda urgente

Joaqo
04 de Diciembre del 2004
Tras implementar el sifuiente código para conectarme a una base de datos Access, se produce una excepción diciendo que el nombre del origen de datos que especifico es demasiado largo.

try{
String url = new String("jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=c:/Banco.mdb");
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con = DriverManager.getConnection(url, "", "");
}
catch(SQLException e){
e.printStackTrace();
}

java.sql.SQLException: [Microsoft][Administrador de controladores ODBC] El nombre del origen de datos es demasiado largo


¿Alguien podría ayudarme? Muchas gracias.

Jes?eyes
04 de Diciembre del 2004
Por que no intentas lo siguiente:

*Crea una entrada en el administrador de origenes de datos ODBC bajo DSN de sistema y con el driver de Access (busca en el panel de control); usa un nombre como "banco" por ejemplo, y selecciona el path donde este tu base de datos (el archivo de access)
* Cambia la cadena de conexión a "jdbc:odbc:banco"

Y debería funcionar. Suerte

Jesús

Joaqo
04 de Diciembre del 2004
Gracias Jesús, pero esa opción no me sirve. El caso es que deseo poder realizar la conexión directamente a la base de datos .mdb desde la propia aplicación java, sin tener que configurar el origen de datos vía ODBC de windows (DSN). Es un intento por conseguir que la aplicación requiera menos problemática para los usuarios.

De nuevo, gracias por tu ayuda.

Rigel
04 de Diciembre del 2004
HOLA:

Bueno si alguna vez me pasó algo así y lo solucioné de la siguiente manera:

String url = ""jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=";

url+= "C:/Tabla.mdb" + ";DriverID=22; READONLY=true}";

Bueno los ultimos parámetros no son necesarios,, pero así es como heché a andar mi programa,, ah otra cosa te sugiero que agreges otro catch

catch (Exception e){
e.printStackTrace();
}

Espero te sea de ayuda.

Saludos y Suerte