How do I connect to an Access database over a LAN using Java?
Question
Do you know of any good guides on how to access an Access database using Java?
I know the basics and basic SQL, but I'm thinking more about access control.
Solution
private static final String accessDBURLPrefix = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=";
private static final String accessDBURLSuffix = ";DriverID=22;READONLY=false}";
// Initialize the JdbcOdbc Bridge Driver
static {
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
} catch(ClassNotFoundException e) {
System.err.println("JdbcOdbc Bridge Driver not found!");
}
}
/** Creates a Connection to a Access Database */
public static Connection getAccessDBConnection(String filename) throws SQLException {
filename = filename.replace('', '/').trim();
String databaseURL = accessDBURLPrefix + filename + accessDBURLSuffix;
return DriverManager.getConnection(databaseURL, "", "");
}
Some useful links:
OTHER TIPS
If you mean using relational databases in Java, you'll need to know JDBC.
You won't be able to do much with security using JDBC. You'll have to build it into the application using something like JAAS or Spring Security.
You can share a database over a shared drive on LAN n then add it to System DSN of other PCs and you can share access database over LAN .. Worked for me like that
I know string is old but maybe useful for someone like me i was frustrated finding a proper and easy way for sharing
JDBC is the way to go. Google for "JDBC tutorial" + mysql, you will get all you need.