Conectar Java y Ms Access sin configurar un DSN por Windows
Si usamos este codigo para conectar a una base de datos MS Acces desde java:try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(Exception e){
e.printStackTrace(System.err);
}
Connection con;
Statement stmt;
//connecting to the database.
try{
con=DriverManager.getConnection("jbdc:odbc:MiDNSDeBaseDeDatos");
stmt=con.createStatement();
con.close();
stmt.close();
}
catch(Exception sqle){
sqle.printStackTrace(System.err);
}
El problema es que si alguien lo elimina, nuestra aplicacion no funcionará.
Podemos corregir ese problema haciendo los siguientes cambios:
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String dataSourceName = "MiBaseDeDatos.mdb";
String dbURL = "jdbc:odbc:Driver={Microsoft Access
Driver (*.mdb)};DBQ=";
dbURL += dataSourceName +
";DriverID=22;READONLY=true)";
dbconn = DriverManager.getConnection(dbURL,"","");
Statement s = dbconn.createStatement();
}
catch ( ClassNotFoundException cnfex )
cnfex.printStackTrace();
info=info+"Connection unsuccessful\n" + cnfex.toString();
}
Esto busca la bases de datos guardada en dataSourceName, que puede incluir un path relativo o absoluto. No necesita registrar ningun DNS.
Suscribirse a:
Enviar comentarios
(
Atom
)
No hay comentarios :
Publicar un comentario