Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Check if SQLite is supported #62

Open
realrolfje opened this issue Aug 9, 2019 · 5 comments
Open

Check if SQLite is supported #62

realrolfje opened this issue Aug 9, 2019 · 5 comments
Milestone

Comments

@realrolfje
Copy link
Owner

  • Check to see if SQLite is supported by the current detection mechanism
  • Add example strings to the config if missing
  • Add SQLite to the documentation and github.io pages
@realrolfje realrolfje added this to the 1.12 milestone Oct 31, 2019
@realrolfje realrolfje modified the milestones: 1.12, 1.13 Feb 15, 2020
@subeeshes
Copy link

Hello,

I would like to use sqlitedb . Please let me know whether this support is already in place .

@realrolfje
Copy link
Owner Author

Hello subeeshes, thanks for reminding me. sqlitedb is not yet part of the supported driver list. I expect it to work without too much problems, I'll try to add it to the next release (I have two bugfixes that need to be released)

@subeeshes
Copy link

Thank you @realrolfje

@realrolfje
Copy link
Owner Author

Anonimatron currently works with a concurrent updatable resultset. This allows for fast processing of records, as we run with a cursor through the resultset we can anonymize data in-place.

SQLite does not support this use of resultset cursors due to technical limitations.

When running Anonimatron against an SQLite jdbc url, it throws the following error:

java.lang.RuntimeException: java.sql.SQLException: SQLite only supports CONCUR_READ_ONLY cursors
	at com.rolfje.anonimatron.jdbc.JdbcAnonymizerService.processTableColumns(JdbcAnonymizerService.java:222)

To be able to support SQLite databases, Anonimatron must be able to:

  1. Detect wether the resultset is updatable
  2. If the resultset is not updatable, generate update statements.
  3. Run the update statements against the database, possibly in a separate connection or second run.

@subeeshes
Copy link

@realrolfje . Yes, I also went through the code. Looks like there is some major code change needed.

This is just for your info. The reason I am looking for sqlite3 is it helps to make file which is portable easily and it run without any DB server running on machine. This mainly helps in the automation and continuous delivery of the anonymized database file. sqlite3 is also having a lots of DB conversion tools to other DB which makes us to use it as a common delivery mechanism.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants