# Reading Data from Microsoft Access Files

**URL:** <https://discourse.processing.org/t/reading-data-from-microsoft-access-files/15622>\
**Category:** Libraries\
**Created:** [November 18, 2019, 7:32pm UTC](https://discourse.processing.org/t/reading-data-from-microsoft-access-files/15622 "2019-11-18T19:32:01Z")\
**Posts on this page:** 11\
**Page:** 1

<div class="post-metadata">

**Author:** ![Lehmoxy](https://avatars.discourse-cdn.com/v4/letter/l/858c86/32.png) [@Lehmoxy](https://discourse.processing.org/u/Lehmoxy)\
**Post date:** [November 18, 2019, 7:32pm UTC](https://discourse.processing.org/t/reading-data-from-microsoft-access-files/15622/1 "2019-11-18T19:32:01Z")

</div>

Hello everyone. I am trying to make a custom interface tool/client for a Microsoft Access database, and I need to be able to read information from a Microsoft Access file. Are there any libraries or other tools available to do this?

Thanks in advance!

---

<div class="post-metadata">

**Author:** ![quark](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/quark/32/26_2.png) [@quark](https://discourse.processing.org/u/quark)\
**Post date:** [November 18, 2019, 8:28pm UTC](https://discourse.processing.org/t/reading-data-from-microsoft-access-files/15622/2 "2019-11-18T20:28:21Z")

</div>

Do you have to read the data directly from a file in MS Access format? If not export the data as a CSV file and read that into Processing instead.

---

<div class="post-metadata">

**Author:** ![Lehmoxy](https://avatars.discourse-cdn.com/v4/letter/l/858c86/32.png) [@Lehmoxy](https://discourse.processing.org/u/Lehmoxy)\
**Post date:** [November 18, 2019, 8:52pm UTC](https://discourse.processing.org/t/reading-data-from-microsoft-access-files/15622/3 "2019-11-18T20:52:20Z")

</div>

Yes. Can I write full-blown Java scripts in Processing? I just found a Java library that supports reading and writing to Access files.

---

<div class="post-metadata">

**Author:** ![quark](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/quark/32/26_2.png) [@quark](https://discourse.processing.org/u/quark)\
**Post date:** [November 18, 2019, 9:03pm UTC](https://discourse.processing.org/t/reading-data-from-microsoft-access-files/15622/4 "2019-11-18T21:03:02Z")

</div>

> [@Lehmoxy](#):
>
> Can I write full-blown Java scripts in Processing?

Not sure what you mean by ‘full-blown’.

Can you provide a link to the Java library you found please.

---

<div class="post-metadata">

**Author:** ![Lehmoxy](https://avatars.discourse-cdn.com/v4/letter/l/858c86/32.png) [@Lehmoxy](https://discourse.processing.org/u/Lehmoxy)\
**Post date:** [November 18, 2019, 10:35pm UTC](https://discourse.processing.org/t/reading-data-from-microsoft-access-files/15622/5 "2019-11-18T22:35:17Z")

</div>

I mean, Processing is a dialect of Java, so can I get away with just writing normal Java code?

[https://jackcess.sourceforge.io/](https://jackcess.sourceforge.io/)

---

<div class="post-metadata">

**Author:** ![GoToLoop](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/gotoloop/32/86_2.png) [@GoToLoop](https://discourse.processing.org/u/GoToLoop)\
**Post date:** [November 18, 2019, 11:14pm UTC](https://discourse.processing.org/t/reading-data-from-microsoft-access-files/15622/6 "2019-11-18T23:14:22Z")

</div>

If you got the complete “.jar” file, you can simply drag it into the PDE (Processing’s IDE). 📁

---

<div class="post-metadata">

**Author:** ![Lehmoxy](https://avatars.discourse-cdn.com/v4/letter/l/858c86/32.png) [@Lehmoxy](https://discourse.processing.org/u/Lehmoxy)\
**Post date:** [November 18, 2019, 11:42pm UTC](https://discourse.processing.org/t/reading-data-from-microsoft-access-files/15622/7 "2019-11-18T23:42:49Z")

</div>

I plan on exporting this project as an application so that my co-workers can use it to query and update the database. If I understand your proposition correctly, then I wouldn’t actually be dealing with a live database after dragging the “.jar” file to the IDE (besides, I want to preserve the MS Access file so that I can continue to modify it directly).

---

<div class="post-metadata">

**Author:** ![GoToLoop](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/gotoloop/32/86_2.png) [@GoToLoop](https://discourse.processing.org/u/GoToLoop)\
**Post date:** [November 18, 2019, 11:48pm UTC](https://discourse.processing.org/t/reading-data-from-microsoft-access-files/15622/8 "2019-11-18T23:48:00Z")

</div>

I was talking about Jackcess’ “.jar” file:  
[SourceForge.net/projects/jackcess/files/jackcess/3.0.1/jackcess-3.0.1.jar/download](http://SourceForge.net/projects/jackcess/files/jackcess/3.0.1/jackcess-3.0.1.jar/download)

---

<div class="post-metadata">

**Author:** ![quark](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/quark/32/26_2.png) [@quark](https://discourse.processing.org/u/quark)\
**Post date:** [November 19, 2019, 9:57am UTC](https://discourse.processing.org/t/reading-data-from-microsoft-access-files/15622/9 "2019-11-19T09:57:45Z")

</div>

Thanks for the link to the Access library it looks good. Yes you can write full Java applications in Processing.

I have just one concern and that is related to sharing the data between multiple users.

Access can be used in two ways

1. Single user - single file and that is supported by this library.

2. Multiple user - shared database file. This requires the database to be on a server using JDBC/ODBC for the connectivity between application and database. The server will be running a thread to manage database requests.

If you want to use this library to _share and update_ the data then you would need a single file to be passed between the users, you can’t have multiple files because the data would become inconsistant due to lack of synchronization.

---

<div class="post-metadata">

**Author:** ![Lehmoxy](https://avatars.discourse-cdn.com/v4/letter/l/858c86/32.png) [@Lehmoxy](https://discourse.processing.org/u/Lehmoxy)\
**Post date:** [November 19, 2019, 4:57pm UTC](https://discourse.processing.org/t/reading-data-from-microsoft-access-files/15622/10 "2019-11-19T16:57:09Z")

</div>

Thanks for the information!

There is only one file that will be accessed by multiple users since the file is on a shared drive at our company. And it is a small group. It’s unlikely two people would want to access the database at the same time (it’s for freezer inventory, and there is usually only one person retrieving something from the freezer at a time). I mainly want to use this library to display information and make small edits.

---

<div class="post-metadata">

**Author:** ![quark](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/quark/32/26_2.png) [@quark](https://discourse.processing.org/u/quark)\
**Post date:** [November 20, 2019, 4:03pm UTC](https://discourse.processing.org/t/reading-data-from-microsoft-access-files/15622/11 "2019-11-20T16:03:26Z")

</div>

There may be an option in the library to check the files status e.g. open (in use) ro cloased (available for us) or something similar. You could use this to prvent multiple user access.
