How do I connect a MS Access database to Jetbrains DataGrip
For Future readers this is still very doable (I'm on DataGrip version 208.1.4):
Get UcanAccess
- Download and extract UcanAccess somewhere:
pathToUcanAccess
- In Datagrip goto add new connection: "Driver And Data source"
- this will create a connection "Database Driver -" and a Driver "Database Driver"
- Edit the newly created Driver "Database Driver":
- Under Additional Files add:
<pathToUcanAccess>\ucanaccess-4.0.4.jar
<pathToUcanAccess>\lib\commons-lang-2.6.jar
<pathToUcanAccess>\lib\commons-logging-1.1.3.jar
<pathToUcanAccess>\lib\hsqldb.jar
<pathToUcanAccess>\lib\jackcess-2.1.11.jar
- For Dialect select "SQL Driver"
- Hit Apply (this should load the classes from the added files)
- Under the class combo you should now see
net.ucanaccess.jdbc.UcanaccessDriver
, select it and hit apply again. - Under Url templates add a new template, for name enter "default" for template enter
jdbc:ucanaccess://{file::identifier.sqlite};newdatabaseversion=V2010
- Hit apply.
- Under Additional Files add:
- Now edit the database connection "Database Driver -":
- Next to the text box for url, in the drop down select default (or what ever you named the template in step 3.5)
- A file select field should replace the previously visible "user" and "password" fields
- In the file selector, select your mdb
- the url field should now look like
jdbc:ucanaccess://C:/data/MDBs/myMdbFile.mdb;newdatabaseversion=V2010
- the url field should now look like
- Hit apply and then ok.
- Next to the text box for url, in the drop down select default (or what ever you named the template in step 3.5)
You should see your Connection popup in the list, double-click to connect, expand it down the tree ("Public \ <unnamed> \ tables"
) and you should see your tables.
Inspired by this question.
As per the documentation, MS Access is not supported yet.
The following standardized and DBMS vendor-specific SQL dialects are supported: DB2, Derby, H2, HSQLDB, MySQL, Oracle, Oracle SQL*Plus, PostgreSQL, SQL Server, SQL92, SQLite, and Sybase .