*This patch does quite a lot of things :*
Core Library :
- Added a mySQL backend (with relationnal support)
- Added a generic backend for SQL98 compliant systems
GUI :
- glade menus updated to reflect new backends
- schema function fixed a bug in the handling of col_size
Command Line utils :
in mdb-schema
- added opt to remove "DROPS" and relations (like in GUI)
- fixed small bug preventing from selecting the backend
- fixed a bug in the handling of col_size
_Notes :_
mysql :
- I used LONGBLOB / -TEXT in mySQL backend for OLE, etc....
But maybe I sould use MEDIUMBLOB or just BLOB (smaller
maximum).
because I don't that Access is going to fill up all
this space anyway.
- I used DOUBLE for currencies, as recomanded in
mySQL's manual.
(I could also use DECIMAL, but this requires providing
correct parameters).
generic backend :
I was trying to be SQL92 compliant.
I used SMALLINT for 1-byte long numbers.
I used VARCHAR for OLE. Just hope it won't trash the
system.
schema converters :
the "col_size" was handled completly wrong.
In access it only gives you the size of data in bytes.
In SQL the field between " () " has different meanings.
- For numbers (INT,DECIMAL,...) it used to represent
precision and scale :
Not the same as in Access
- For chars and data (VARCHAR,TEXT,BLOB,...) it
represent the lenght of the data :
Similar to Access
So instead of always passing the value of "col_size", I
pass it only with binary/text data (Text, OLE, and Notes).
Also a very small bug in the way "mdb-schema" counts
opt prevent it to change the back-end.
_Patch Usage :_
from within the directory where the source is installed :
zcat mdbtools-0.5-dryak.patch.gz | patch -p0
patchfile for mySQL, generic SQL92 and some bugfixes