-------------------------------------------------------------------------------
Document: TmySQL /DOCS/README.TXT
Author: Justin P. Yunke <yunke@productivity.org>
Date: 02/10/2002
Version: 2.1b
Copyrights:
- Copyright (c) 1999 Justin P. Yunke <yunke@productivity.org>
[for other copyrights, please see the included *.pas files]
-------------------------------------------------------------------------------
DESCRIPTION OF THE TMYSQL PROJECT
The aim of this project is to provide tools to connect to mySQL servers using
Delphi Visual Component Libraries (VCLs).
Available in this archive:
- mySQLClient: This unit contains a VCL which allows a direct connection to
a mySQL server. It provides connect/close options, and contains Query,
Modify, and Utility classes to perform all operations on the server.
Also available in this archive:
- mySQLCommon: This unit contains various support code for the above units.
You will probably need to include this in your _uses_ statement.
- mySQLAuthDialog: A ready-to-use TForm descendent for requesting
username/password info from a user. (See example in /test/*)
IMPORTANT NOTE ABOUT THIS ARCHIVE
I no longer intend to develop Database Components (BDE) within Delphi. If
you're looking for database-aware components, you may wish to look into
ZEOS or other offerings. Also, I understand that Borland Delphi 6 will
have direct-to-mySQL support to avoid the painful hassles with ODBC and BDE
that was the original purpose of this project.
Please do not ask when the Database Components will be available. :)
DESCRIPTION OF TMYSQLCLIENT UNIT
This unit contains these classes for use in Delphi 3.0 and beyond:
- TmySQLClient: A VCL for TCustom_mySQLClient.
- TCustom_mySQLClient: An inheritable, modifiable, non-visual component for
use in programs where a VCL is undesired.
- TmySQLClientQuery: A non-visual TStringList-inherited object that provides
a fast, simplified interface to input and output of a query sent to the mySQL
server.
- TmySQLClientModify: A non-visual TObject-inherited object that provides a
simplified interface for adding/modifying/removing data to/from the mySQL
server.
- TmySQLClientUtility: A non-visual TObject-inherited object that provides a
simplified interface for server administration operations, such as
creating and dropping of databases, ping, etc.
DESCRIPTION OF TMYSQLAUTHDIALOG UNIT
- TFmySQLAuthDialog: A TForm descendant that presents a clean-looking
Username/Password dialog box.
-------------------------------------------------------------------------------
Note: You will need to copy the libmysql.dll file out of the
client subdirectory into the same directory as your application EXE
in order to immediately use this VCL. Otherwise, use the
"MYSQL_DLL_LOCATION" global variable to specify a custom location.
Please keep your DLLs with your applications. Most system administrators
hate having to hunt for DLLs in the SYSTEM32 directories and work through
incompatibilities.
-------------------------------------------------------------------------------
Other important features:
- Supports Windows threads to cease "blocking" of the functions in the
libmysql.dll. This DLL is available by compiling the mySQL source on a
Windows 32 platform, or finding a precompiled version (one is included
in this archive).
- The test project, including executable, covers many of the functions.
Creation of databases, tables, and adding/retrieving data are shown
in a simple step-by-step fashion. Use the source!
- Utilizes dynamic loading of DLL functions, so one won't have to hard-code
library locations in your source.
-------------------------------------------------------------------------------
Planned additions to the project:
- DOCUMENTATION!
- Possible further development of multi-threaded capability, included multiple
TCP/IP connections for simultaneous operations.
- Use of the "seek" functions to reduce the amount of memory required at one
instance. I imagine some large lookups would require these.
- Error/debuging capabilities.
- NOTE: Consider this ALPHA code. :) I have used this component in a
number of applications and have not run into any major problems resulting
in data loss. However, this doesn't mean your particular application
won't throw it for a loop. Please submit any major corrections to the
mailing list.
-------------------------------------------------------------------------------
About Licensing/Modifications:
- Please see the LICENSE.TXT file in the /docs directory.
- You are required to also follow any licenses included in the mySQL
documentation found at www.mysql.com. Please support commercial ventures
that provide open-source solutions! Monty and the gang at mySQL AB have
worked very hard. Put some cash into their company. I feel $200US is
quite reasonable compared to the multiple thousands required by other
companies.
- This product includes software developed by Matthias Fichtner. His site is
here:
http://www.fichtner.net/delphi/mysql/
For further information about Matthias Fichtner's mysql.pas, please see the
mysql.pas-readme.txt and mysql.pas-license.txt files in the /docs folder
or visit his site.
- The included libmySQL.DLL was obtained from the Win32 BINARY distribution
of MySQL, available here:
http://www.mysql.com/downloads/mysql-3.23.html
TmySQL Version 2.1b (and later) used the BINARY distribution labeled as:
"MySQL 3.23.47 Windows 95/98/NT/2000/XP (11.9M)"
...downloaded from here:
http://www.mysql.com/Downloads/MySQL-3.23/mysql-3.23.47-win.zip
-------------------------------------------------------------------------------
About the WWW Site and e-mail address:
- Official Site:
http://www.productivity.org/projects/tmysql/
- Official Mailing List, Register for "TmySQL" Here:
http://www.elists.org/
- Official E-Mail (you'll get a faster response with the mailing list).
tmysql@productivity.org
------------------------------------------------------------------------------
Directory Overview:
- TmySQL Delphi 5 Package /
- TmySQL Source Code with VCL, non-VCLs /client
- TmySQL & mysql.pas Documentation /docs
- TmySQL Sample Test Application /test
-------------------------------------------------------------------------------