Created
September 8, 2016 13:26
-
-
Save kazlauskis/1d0bdb9efb3b1bb1e76d48aa368f3a64 to your computer and use it in GitHub Desktop.
Transforms MS Access MDB file to sqlite database using mdbtools
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/bin/bash | |
| # Inspired by | |
| # https://www.codeenigma.com/community/blog/using-mdbtools-nix-convert-microsoft-access-mysql | |
| # USAGE | |
| # Rename your MDB file to migration-export.mdb | |
| # run ./mdb2sqlite.sh migration-export.mdb | |
| # wait and wait a bit longer... | |
| mdb-schema migration-export.mdb sqlite > schema.sql | |
| mkdir sqlite | |
| mkdir sql | |
| for i in $( mdb-tables migration-export.mdb ); do echo $i ; mdb-export -D "%Y-%m-%d %H:%M:%S" -H -I sqlite migration-export.mdb $i > sql/$i.sql; done | |
| mv schema.sql sqlite | |
| mv sql sqlite | |
| cd sqlite | |
| cat schema.sql | sqlite3 db.sqlite3 | |
| for f in sql/* ; do echo $f && cat $f | sqlite3 db.sqlite3; done |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Here is the ChatGPT:
https://chatgpt.com/share/68e4fac3-c604-8012-acc9-38d0876b29f3
It produced 100% accurate script for non-Latin database AND removed MS Access attachment type, which is a no-no ( ie. Attachments type 0012):
Enjoy