-
Notifications
You must be signed in to change notification settings - Fork 20
Database normalization features #616
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
base: master
Are you sure you want to change the base?
Database normalization features #616
Conversation
The Danish National Archives requires the database to be 1NF (exported as SIARD-DK). The following features allows exporting a database for this purpose without creating an auxiliary database. - Allow exporting custom views indistinguishable from tables, specifying PK's and FK's - Helper configuration module for normalizing array and JSON columns to tables (custom views) - Support database preparation statements (for creating temporary tables used in custom views)
|
The code has only been tested on PostgreSQL. I believe I have written the array normalization SQL without non-standard features, though. |
|
Hi @daniel-skovenborg, thank you for your contribution. Could you provide more details, documentation or an example of how to use the features you've developed? Best regards, Luis |
|
Hi @luis100, |
|
I've written a lengthy walkthrough. The example is tested. |
|
Wonderful @daniel-skovenborg we will take a look at it as soon as we can. |
|
Being back on my database export task after nearly a year I've discovered an error: I've missed |
|
Unfortunately we have not yet found someone available to review the developed feature and this is too large PR to accept without proper external review. The Snyk security check of the PR reports an unrelated security issue which pertains to the com.mysql:mysql-connector-j dependency version. |
Sorry, I know this is a very large pull request and that your guidelines encourage to ask before implementing new features. However, I urgently needed this feature enough to implement it, even if it will only ever live in my own fork. I am (for) now done with the task for which the code was designed and think it's ready to be adapted, if you want it.
Description
The Danish National Archives requires the database to be 1NF (exported as SIARD-DK). The following features allows exporting a database for this purpose without creating an auxiliary database.
The normalization configuration module currently has only the string pattern options implemented that I needed where my own requirements differed from what I deemed to be the proper default.