DbExpress drivers for MySQL V5.0
The Borland-supplied dbExpress drivers for MySQL prior to Delphi 2007 only work up to version V4.0 of MySQL, even though version V5.0 is becoming increasingly popular, and V5.1 is now in beta. The Just Software Solutions dbxOpenMySQL5 drivers provide a drop-in replacement for the vast majority of cases, allowing easy transition to the newer versions of MySQL.
Details about new versions will be posted as part of our RSS feed.
License and Support
This driver is released under the LGPL, so is provided free of charge, on an as-is basis. There is no warranty or guaranteed support.
For more immediate response, please consider hiring us to make the change.
If you find this driver useful, and would like to support the development of new features and bug fixes, please make a donation by clicking on the button below.
- Works with Delphi 6, Delphi 7, and Borland Developer Studio 2006.
- Works with MySQL V5.0.
- Available as a DLL, or as source code for static linking.
- Supports all MySQL Data types.
- Supports transactions for MySQL tables with appropriate storage engines (i.e. InnoDB or BDB).
- Support for alternate character sets using the
ServerCharSetconnection parameter (even on BDS2006, despite the bug in the BDS2006 runtime).
- Large BLOB support.
- Supports TSQLTable.
- Supports design-time table access within the IDE.
- Works when
DecimalSeparatoris set to something other than
'.', as is common in non-English locales.
The source code and compiled DLL for version 1.3 are available for download:
- dbxopenmysql5_source.zip — Source code, 34,008 bytes, 24th August 2007
- dbxopenmysql5_dll.zip — Compiled DLL, 94,264 bytes, 24th August 2007
For full instructions see the install.txt file in each .zip.
Copy the DLL somewhere on your path. You will also need an appropriate (V5.0) libmysql.dll on the path.
If you're setting your dbexpress stuff up in the IDE, append the contents of the .ini files to the existing ones of the same name in your Delphi installation.
If you're setting up the dbexpress stuff programmatically, then you need something like:
var Connection: TSQLConnection; begin Connection := TSQLConnection.Create(nil); Connection.DriverName := 'dbxmysql'; Connection.GetDriverFunc := 'getSQLDriverMYSQL50'; Connection.LibraryName := 'dbxopenmysql50.dll'; Connection.VendorLib := 'libmysql.dll'; Connection.Params.Append('Database=NAME_OF_DATABASE); Connection.Params.Append('User_Name=NAME_OF_USER'); Connection.Params.Append('Password=PASSWORD'); Connection.Params.Append('HostName=localhost'); Connection.Open; // ... do stuff Connection.Free; end;
This has been tested with Delphi 7 and BDS2006. I have also had reports that it works with Delphi 6. It may or may not work with other versions — I would be grateful of any reports of success or otherwise.
Thanks also to Bob Marietta, who has helped me iron out problems by providing simple, repeatable test cases that demonstrated the bugs he found.
[ / delphi]