mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-06-04 19:58:37 +02:00
+ added support for MySQL 5.0
+ added mysql_stmt_* calls to dyn. loaded mysql-library git-svn-id: trunk@1800 -
This commit is contained in:
parent
f7f14e4dee
commit
d1f1e5adf4
3
.gitattributes
vendored
3
.gitattributes
vendored
@ -719,6 +719,7 @@ fcl/db/sqldb/mysql/fpmake.pp svneol=native#text/plain
|
||||
fcl/db/sqldb/mysql/mysql40conn.pas svneol=native#text/plain
|
||||
fcl/db/sqldb/mysql/mysql41conn.pas svneol=native#text/plain
|
||||
fcl/db/sqldb/mysql/mysql4conn.pas svneol=native#text/plain
|
||||
fcl/db/sqldb/mysql/mysql50conn.pas svneol=native#text/plain
|
||||
fcl/db/sqldb/mysql/mysqlconn.inc svneol=native#text/plain
|
||||
fcl/db/sqldb/odbc/Makefile svneol=native#text/plain
|
||||
fcl/db/sqldb/odbc/Makefile.fpc svneol=native#text/plain
|
||||
@ -1523,6 +1524,8 @@ packages/base/mysql/mysql4_version.pp svneol=native#text/plain
|
||||
packages/base/mysql/mysql4dyn.pp svneol=native#text/plain
|
||||
packages/base/mysql/mysql4impl.inc svneol=native#text/plain
|
||||
packages/base/mysql/mysql4types.inc svneol=native#text/plain
|
||||
packages/base/mysql/mysql50.pp svneol=native#text/plain
|
||||
packages/base/mysql/mysql50dyn.pp svneol=native#text/plain
|
||||
packages/base/mysql/mysqls.c -text
|
||||
packages/base/mysql/mysqls.pp svneol=native#text/plain
|
||||
packages/base/mysql/rmdb -text
|
||||
|
@ -15,7 +15,7 @@ program aListTables;
|
||||
|
||||
uses
|
||||
Classes,
|
||||
sqldb, pqconnection, mysql40conn, mysql41conn, IBConnection, ODBCConn,
|
||||
sqldb, pqconnection, mysql40conn, mysql41conn, mysql50conn, IBConnection, ODBCConn,
|
||||
SqldbExampleUnit;
|
||||
|
||||
var Tables : TStringList;
|
||||
@ -27,6 +27,7 @@ begin
|
||||
// create FConnection
|
||||
if dbtype = 'mysql40' then Fconnection := tMySQL40Connection.Create(nil);
|
||||
if dbtype = 'mysql41' then Fconnection := tMySQL41Connection.Create(nil);
|
||||
if dbtype = 'mysql50' then Fconnection := tMySQL50Connection.Create(nil);
|
||||
if dbtype = 'postgresql' then Fconnection := tpqConnection.Create(nil);
|
||||
if dbtype = 'interbase' then Fconnection := tIBConnection.Create(nil);
|
||||
if dbtype = 'odbc' then Fconnection := tODBCConnection.Create(nil);
|
||||
|
@ -5,6 +5,7 @@
|
||||
# * interbase
|
||||
# * mysql40
|
||||
# * mysql41
|
||||
# * mysql50
|
||||
# * odbc
|
||||
# * postgresql
|
||||
|
||||
|
@ -17,7 +17,7 @@ interface
|
||||
uses
|
||||
Classes,
|
||||
sqldb, pqconnection, IBConnection, ODBCConn,
|
||||
mysql40conn, mysql41conn;
|
||||
mysql40conn, mysql41conn, mysql50conn;
|
||||
|
||||
var dbtype,
|
||||
dbname,
|
||||
@ -82,6 +82,7 @@ procedure CreateFConnection;
|
||||
begin
|
||||
if dbtype = 'mysql40' then Fconnection := tMySQL40Connection.Create(nil);
|
||||
if dbtype = 'mysql41' then Fconnection := tMySQL41Connection.Create(nil);
|
||||
if dbtype = 'mysql50' then Fconnection := tMySQL50Connection.Create(nil);
|
||||
if dbtype = 'postgresql' then Fconnection := tpqConnection.Create(nil);
|
||||
if dbtype = 'interbase' then Fconnection := tIBConnection.Create(nil);
|
||||
if dbtype = 'odbc' then Fconnection := tODBCConnection.Create(nil);
|
||||
|
@ -1,5 +1,5 @@
|
||||
#
|
||||
# Don't edit, this file is generated by FPCMake Version 2.0.0 [2005/11/20]
|
||||
# Don't edit, this file is generated by FPCMake Version 2.0.0 [2005/11/21]
|
||||
#
|
||||
default: all
|
||||
MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-netbsd i386-solaris i386-qnx i386-netware i386-openbsd i386-wdosx i386-emx i386-watcom i386-netwlibc i386-wince m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos powerpc-linux powerpc-netbsd powerpc-macos powerpc-darwin powerpc-morphos sparc-linux sparc-netbsd sparc-solaris x86_64-linux x86_64-freebsd x86_64-win64 arm-linux arm-wince powerpc64-linux
|
||||
@ -233,115 +233,115 @@ PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages/base $(FPCDIR)/packages/ext
|
||||
override PACKAGE_NAME=fcl
|
||||
PACKAGEDIR_MAIN:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fcl/Makefile.fpc,$(PACKAGESDIR))))))
|
||||
ifeq ($(FULL_TARGET),i386-linux)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),i386-go32v2)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),i386-win32)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),i386-os2)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),i386-freebsd)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),i386-beos)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),i386-netbsd)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),i386-solaris)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),i386-qnx)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),i386-netware)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),i386-openbsd)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),i386-wdosx)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),i386-emx)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),i386-watcom)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),i386-netwlibc)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),i386-wince)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),m68k-linux)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),m68k-freebsd)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),m68k-netbsd)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),m68k-amiga)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),m68k-atari)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),m68k-openbsd)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),m68k-palmos)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),powerpc-linux)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),powerpc-netbsd)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),powerpc-macos)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),powerpc-darwin)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),powerpc-morphos)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),sparc-linux)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),sparc-netbsd)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),sparc-solaris)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),x86_64-linux)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),x86_64-freebsd)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),x86_64-win64)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),arm-linux)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),arm-wince)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),powerpc64-linux)
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql4conn
|
||||
override TARGET_UNITS+=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
endif
|
||||
override INSTALL_FPCPACKAGE=y
|
||||
ifeq ($(FULL_TARGET),i386-linux)
|
||||
|
@ -6,7 +6,7 @@
|
||||
main=fcl
|
||||
|
||||
[target]
|
||||
units=mysql40conn mysql41conn mysql4conn
|
||||
units=mysql40conn mysql41conn mysql50conn mysql4conn
|
||||
|
||||
[require]
|
||||
packages=mysql
|
||||
|
11
fcl/db/sqldb/mysql/mysql50conn.pas
Normal file
11
fcl/db/sqldb/mysql/mysql50conn.pas
Normal file
@ -0,0 +1,11 @@
|
||||
{
|
||||
Contains the TMysqlConnection for MySQL 5.0
|
||||
}
|
||||
|
||||
unit mysql50conn;
|
||||
|
||||
{$DEFINE MYSQL50}
|
||||
|
||||
{$i mysqlconn.inc}
|
||||
|
||||
end.
|
@ -6,22 +6,29 @@ interface
|
||||
|
||||
uses
|
||||
Classes, SysUtils,sqldb,db,
|
||||
{$IfDef mysql41}
|
||||
mysql41dyn;
|
||||
{$DEFINE TConnectionName:=TMySQL41Connection}
|
||||
{$DEFINE TTransactionName:=TMySQL41Transaction}
|
||||
{$DEFINE TCursorName:=TMySQL41Cursor}
|
||||
{$IfDef mysql50}
|
||||
mysql50dyn;
|
||||
{$DEFINE TConnectionName:=TMySQL50Connection}
|
||||
{$DEFINE TTransactionName:=TMySQL50Transaction}
|
||||
{$DEFINE TCursorName:=TMySQL50Cursor}
|
||||
{$ELSE}
|
||||
{$IFDEF mysql4} // temporary backwards compatibility for Lazarus
|
||||
mysql40dyn;
|
||||
{$DEFINE TConnectionName:=TMySQLConnection}
|
||||
{$DEFINE TTransactionName:=TMySQLTransaction}
|
||||
{$DEFINE TCursorName:=TMySQLCursor}
|
||||
{$IfDef mysql41}
|
||||
mysql41dyn;
|
||||
{$DEFINE TConnectionName:=TMySQL41Connection}
|
||||
{$DEFINE TTransactionName:=TMySQL41Transaction}
|
||||
{$DEFINE TCursorName:=TMySQL41Cursor}
|
||||
{$ELSE}
|
||||
mysql40dyn;
|
||||
{$DEFINE TConnectionName:=TMySQL40Connection}
|
||||
{$DEFINE TTransactionName:=TMySQL40Transaction}
|
||||
{$DEFINE TCursorName:=TMySQL40Cursor}
|
||||
{$IFDEF mysql4} // temporary backwards compatibility for Lazarus
|
||||
mysql40dyn;
|
||||
{$DEFINE TConnectionName:=TMySQLConnection}
|
||||
{$DEFINE TTransactionName:=TMySQLTransaction}
|
||||
{$DEFINE TCursorName:=TMySQLCursor}
|
||||
{$ELSE}
|
||||
mysql40dyn;
|
||||
{$DEFINE TConnectionName:=TMySQL40Connection}
|
||||
{$DEFINE TTransactionName:=TMySQL40Transaction}
|
||||
{$DEFINE TCursorName:=TMySQL40Cursor}
|
||||
{$EndIf}
|
||||
{$EndIf}
|
||||
{$EndIf}
|
||||
|
||||
@ -113,6 +120,7 @@ Resourcestring
|
||||
SErrFetchingdata = 'Error fetching row data: %s';
|
||||
SErrGettingResult = 'Error getting result set: %s';
|
||||
SErrNoQueryResult = 'No result from query.';
|
||||
SErrNotversion50 = 'TMySQL50Connection can not work with the installed MySQL client version (%s).';
|
||||
SErrNotversion41 = 'TMySQL41Connection can not work with the installed MySQL client version (%s).';
|
||||
SErrNotversion40 = 'TMySQL40Connection can not work with the installed MySQL client version (%s).';
|
||||
|
||||
@ -144,9 +152,9 @@ function TConnectionName.GetClientInfo: string;
|
||||
|
||||
begin
|
||||
// To make it possible to call this if there's no connection yet
|
||||
InitialiseMysql4;
|
||||
InitialiseMysql;
|
||||
Result:=strpas(mysql_get_client_info());
|
||||
ReleaseMysql4;
|
||||
ReleaseMysql;
|
||||
end;
|
||||
|
||||
function TConnectionName.GetServerStatus: String;
|
||||
@ -186,13 +194,18 @@ end;
|
||||
|
||||
procedure TConnectionName.DoInternalConnect;
|
||||
begin
|
||||
InitialiseMysql4;
|
||||
{$IFDEF mysql41}
|
||||
InitialiseMysql;
|
||||
{$IFDEF mysql50}
|
||||
if copy(strpas(mysql_get_client_info()),1,3)<>'5.0' then
|
||||
Raise EInOutError.CreateFmt(SErrNotversion50,[strpas(mysql_get_client_info())]);
|
||||
{$ELSE}
|
||||
{$IFDEF mysql41}
|
||||
if copy(strpas(mysql_get_client_info()),1,3)<>'4.1' then
|
||||
Raise EInOutError.CreateFmt(SErrNotversion41,[strpas(mysql_get_client_info())]);
|
||||
{$ELSE}
|
||||
{$ELSE}
|
||||
if copy(strpas(mysql_get_client_info()),1,3)<>'4.0' then
|
||||
Raise EInOutError.CreateFmt(SErrNotversion40,[strpas(mysql_get_client_info())]);
|
||||
{$ENDIF}
|
||||
{$ENDIF}
|
||||
inherited DoInternalConnect;
|
||||
ConnectToServer;
|
||||
@ -204,7 +217,7 @@ begin
|
||||
inherited DoInternalDisconnect;
|
||||
mysql_close(FMySQL);
|
||||
FMySQL:=Nil;
|
||||
ReleaseMysql4;
|
||||
ReleaseMysql;
|
||||
end;
|
||||
|
||||
function TConnectionName.GetHandle: pointer;
|
||||
|
@ -1,5 +1,5 @@
|
||||
#
|
||||
# Don't edit, this file is generated by FPCMake Version 2.0.0 [2005/11/20]
|
||||
# Don't edit, this file is generated by FPCMake Version 2.0.0 [2005/11/21]
|
||||
#
|
||||
default: all
|
||||
MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-netbsd i386-solaris i386-qnx i386-netware i386-openbsd i386-wdosx i386-emx i386-watcom i386-netwlibc i386-wince m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos powerpc-linux powerpc-netbsd powerpc-macos powerpc-darwin powerpc-morphos sparc-linux sparc-netbsd sparc-solaris x86_64-linux x86_64-freebsd x86_64-win64 arm-linux arm-wince powerpc64-linux
|
||||
@ -233,115 +233,115 @@ PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages/base $(FPCDIR)/packages/ext
|
||||
override PACKAGE_NAME=mysql
|
||||
override PACKAGE_VERSION=2.0.0
|
||||
ifeq ($(FULL_TARGET),i386-linux)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),i386-go32v2)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),i386-win32)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),i386-os2)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),i386-freebsd)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),i386-beos)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),i386-netbsd)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),i386-solaris)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),i386-qnx)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),i386-netware)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),i386-openbsd)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),i386-wdosx)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),i386-emx)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),i386-watcom)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),i386-netwlibc)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),i386-wince)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),m68k-linux)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),m68k-freebsd)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),m68k-netbsd)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),m68k-amiga)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),m68k-atari)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),m68k-openbsd)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),m68k-palmos)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),powerpc-linux)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),powerpc-netbsd)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),powerpc-macos)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),powerpc-darwin)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),powerpc-morphos)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),sparc-linux)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),sparc-netbsd)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),sparc-solaris)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),x86_64-linux)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),x86_64-freebsd)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),x86_64-win64)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),arm-linux)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),arm-wince)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),powerpc64-linux)
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
override TARGET_UNITS+=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
endif
|
||||
ifeq ($(FULL_TARGET),i386-linux)
|
||||
override TARGET_EXAMPLES+=testdb4 testdb3
|
||||
|
@ -7,7 +7,7 @@ name=mysql
|
||||
version=2.0.0
|
||||
|
||||
[target]
|
||||
units=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn
|
||||
units=my4_sys mysql4_com mysql4_version mysql4 mysql4dyn mysql4_comdyn mysql3_com mysql3_version mysql3 mysql3_comdyn mysql3dyn mysql40 mysql40dyn mysql41 mysql41dyn mysql50 mysql50dyn
|
||||
examples=testdb4 testdb3
|
||||
|
||||
[require]
|
||||
|
@ -38,6 +38,9 @@ uses
|
||||
mysqllib = 'libmysql.dll';
|
||||
{$ENDIF}
|
||||
|
||||
{$IFDEF mysql50}
|
||||
{$DEFINE mysql41}
|
||||
{$ENDIF mysql50}
|
||||
|
||||
{$PACKRECORDS C}
|
||||
|
||||
@ -101,9 +104,14 @@ uses
|
||||
COM_DEBUG,COM_PING,COM_TIME,COM_DELAYED_INSERT,
|
||||
COM_CHANGE_USER,COM_BINLOG_DUMP,COM_TABLE_DUMP,
|
||||
COM_CONNECT_OUT,COM_REGISTER_SLAVE,
|
||||
{$IFDEF mysql41}
|
||||
{$IFDEF mysql50}
|
||||
COM_STMT_PREPARE, COM_STMT_EXECUTE, COM_STMT_SEND_LONG_DATA, COM_STMT_CLOSE,
|
||||
COM_STMT_RESET, COM_SET_OPTION, COM_STMT_FETCH,
|
||||
{$ELSE}
|
||||
{$IFDEF mysql41}
|
||||
COM_PREPARE,COM_EXECUTE,COM_LONG_DATA,COM_CLOSE_STMT,
|
||||
COM_RESET_STMT,COM_SET_OPTION,
|
||||
{$ENDIF}
|
||||
{$ENDIF}
|
||||
COM_END
|
||||
);
|
||||
@ -138,6 +146,9 @@ uses
|
||||
AUTO_INCREMENT_FLAG = 512; // field is a autoincrement field
|
||||
TIMESTAMP_FLAG = 1024; // Field is a timestamp
|
||||
SET_FLAG = 2048; // field is a set
|
||||
{$IFDEF mysql50}
|
||||
NO_DEFAULT_VALUE_FLAG=4096; // Field doesn't have default value
|
||||
{$ENDIF}
|
||||
NUM_FLAG = 32768; // Field is num (for clients)
|
||||
PART_KEY_FLAG = 16384; // Intern; Part of some key
|
||||
GROUP_FLAG = 32768; // Intern: Group field
|
||||
@ -189,7 +200,19 @@ uses
|
||||
SERVER_MORE_RESULTS_EXISTS = 8; // Multi query - next query exists
|
||||
SERVER_QUERY_NO_GOOD_INDEX_USED = 16;
|
||||
SERVER_QUERY_NO_INDEX_USED = 32;
|
||||
{$IFDEF mysql50}
|
||||
{ The server was able to fulfill the clients request and opened a
|
||||
read-only non-scrollable cursor for a query. This flag comes
|
||||
in reply to COM_STMT_EXECUTE and COM_STMT_FETCH commands. }
|
||||
SERVER_STATUS_CURSOR_EXISTS = 64;
|
||||
{ This flag is sent when a read-only cursor is exhausted, in reply to
|
||||
COM_STMT_FETCH command. }
|
||||
SERVER_STATUS_LAST_ROW_SENT = 128;
|
||||
{$ENDIF}
|
||||
SERVER_STATUS_DB_DROPPED = 256; // A database was dropped
|
||||
{$IFDEF mysql50}
|
||||
SERVER_STATUS_NO_BACKSLASH_ESCAPES = 512;
|
||||
{$ENDIF}
|
||||
|
||||
{$IFDEF mysql41}
|
||||
MYSQL_ERRMSG_SIZE = 512;
|
||||
@ -199,6 +222,10 @@ uses
|
||||
NET_READ_TIMEOUT = 30; // Timeout on read
|
||||
NET_WRITE_TIMEOUT = 60; // Timeout on write
|
||||
NET_WAIT_TIMEOUT = 8*60*60; // Wait for new query
|
||||
{$IFDEF mysql50}
|
||||
ONLY_KILL_QUERY = 1;
|
||||
{$ENDIF}
|
||||
|
||||
|
||||
const
|
||||
MAX_TINYINT_WIDTH = 3; // Max width for a TINY w.o. sign
|
||||
@ -246,7 +273,12 @@ uses
|
||||
return_status : Pdword;
|
||||
reading_or_writing : byte;
|
||||
save_char : char;
|
||||
no_send_ok : my_bool;
|
||||
no_send_ok : my_bool; // For SPs and other things that do multiple stmts
|
||||
{$IFDEF mysql50}
|
||||
no_send_eof : my_bool; // For SPs' first version read-only cursors
|
||||
no_send_error : my_bool; // Set if OK packet is already sent, and
|
||||
// we do not need to send error messages
|
||||
{$ENDIF}
|
||||
{ Pointer to query object in query cache, do not equal NULL (0) for
|
||||
queries in cache that have not stored its results yet }
|
||||
{ $endif}
|
||||
@ -275,7 +307,11 @@ uses
|
||||
MYSQL_TYPE_TIMESTAMP,MYSQL_TYPE_LONGLONG,
|
||||
MYSQL_TYPE_INT24,MYSQL_TYPE_DATE,MYSQL_TYPE_TIME,
|
||||
MYSQL_TYPE_DATETIME,MYSQL_TYPE_YEAR,
|
||||
MYSQL_TYPE_NEWDATE,MYSQL_TYPE_ENUM := 247,
|
||||
MYSQL_TYPE_NEWDATE,
|
||||
{$IFDEF mysql50}
|
||||
MYSQL_TYPE_VARCHAR, MYSQL_TYPE_BIT, MYSQL_TYPE_NEWDECIMAL=246,
|
||||
{$ENDIF}
|
||||
MYSQL_TYPE_ENUM := 247,
|
||||
MYSQL_TYPE_SET := 248,MYSQL_TYPE_TINY_BLOB := 249,
|
||||
MYSQL_TYPE_MEDIUM_BLOB := 250,MYSQL_TYPE_LONG_BLOB := 251,
|
||||
MYSQL_TYPE_BLOB := 252,MYSQL_TYPE_VAR_STRING := 253,
|
||||
@ -287,6 +323,9 @@ uses
|
||||
const
|
||||
CLIENT_MULTI_QUERIES = CLIENT_MULTI_STATEMENTS;
|
||||
FIELD_TYPE_DECIMAL = MYSQL_TYPE_DECIMAL;
|
||||
{$IFDEF mysql50}
|
||||
FIELD_TYPE_NEWDECIMAL = MYSQL_TYPE_NEWDECIMAL;
|
||||
{$ENDIF}
|
||||
FIELD_TYPE_TINY = MYSQL_TYPE_TINY;
|
||||
FIELD_TYPE_SHORT = MYSQL_TYPE_SHORT;
|
||||
FIELD_TYPE_LONG = MYSQL_TYPE_LONG;
|
||||
@ -312,7 +351,9 @@ uses
|
||||
FIELD_TYPE_CHAR = MYSQL_TYPE_TINY;
|
||||
FIELD_TYPE_INTERVAL = MYSQL_TYPE_ENUM;
|
||||
FIELD_TYPE_GEOMETRY = MYSQL_TYPE_GEOMETRY;
|
||||
|
||||
{$IFDEF mysql50}
|
||||
FIELD_TYPE_BIT = MYSQL_TYPE_BIT;
|
||||
{$ENDIF}
|
||||
{ Shutdown/kill enums and constants }
|
||||
{ Bits for THD::killable. }
|
||||
MYSQL_SHUTDOWN_KILLABLE_CONNECT : byte = 1 shl 0;
|
||||
@ -338,6 +379,12 @@ uses
|
||||
KILL_CONNECTION := 255
|
||||
);
|
||||
|
||||
{$IFDEF mysql50}
|
||||
enum_cursor_type = (CURSOR_TYPE_NO_CURSOR := 0,CURSOR_TYPE_READ_ONLY := 1,
|
||||
CURSOR_TYPE_FOR_UPDATE := 2,CURSOR_TYPE_SCROLLABLE := 4
|
||||
);
|
||||
{$ENDIF}
|
||||
|
||||
{ options for mysql_set_option }
|
||||
enum_mysql_set_option = (MYSQL_OPTION_MULTI_STATEMENTS_ON,
|
||||
MYSQL_OPTION_MULTI_STATEMENTS_OFF
|
||||
@ -380,8 +427,13 @@ uses
|
||||
end;
|
||||
|
||||
{ The following is for user defined functions }
|
||||
{$IFDEF mysql50}
|
||||
Item_result = (STRING_RESULT,REAL_RESULT,INT_RESULT,
|
||||
ROW_RESULT);
|
||||
{$ELSE}
|
||||
Item_result = (STRING_RESULT := 0,REAL_RESULT,INT_RESULT,
|
||||
ROW_RESULT,DECIMAL_RESULT);
|
||||
{$ENDIF}
|
||||
PItem_result = ^Item_result;
|
||||
|
||||
Pst_udf_args = ^st_udf_args;
|
||||
@ -391,7 +443,10 @@ uses
|
||||
args : ^Pchar; // Pointer to item_results
|
||||
lengths : Pdword; // Length of string arguments
|
||||
maybe_null : Pchar; // Length of string arguments
|
||||
|
||||
{$IFDEF mysql50}
|
||||
attributes : ^pchar; // Pointer to attribute name
|
||||
attribute_lengths : ^dword; // Length of attribute arguments
|
||||
{$ENDIF}
|
||||
end;
|
||||
UDF_ARGS = st_udf_args;
|
||||
PUDF_ARGS = ^UDF_ARGS;
|
||||
@ -428,6 +483,9 @@ uses
|
||||
function check_scramble_323(_para1:Pchar; message:Pchar; salt:Pdword):my_bool;cdecl;external mysqllib name 'check_scramble_323';
|
||||
procedure get_salt_from_password_323(res:Pdword; password:Pchar);cdecl;external mysqllib name 'get_salt_from_password_323';
|
||||
procedure make_password_from_salt_323(fto:Pchar; salt:Pdword);cdecl;external mysqllib name 'make_password_from_salt_323';
|
||||
{$IFDEF mysql50}
|
||||
function octet2hex(fto:Pchar; str:Pchar; len:dword):pchar;cdecl;external mysqllib name 'octet2hex';
|
||||
{$ENDIF}
|
||||
procedure make_scrambled_password(fto:Pchar; password:Pchar);cdecl;external mysqllib name 'make_scrambled_password';
|
||||
procedure scramble(fto:Pchar; message:Pchar; password:Pchar);cdecl;external mysqllib name 'scramble';
|
||||
function check_scramble(reply:Pchar; message:Pchar; hash_stage2:Pbyte):my_bool;cdecl;external mysqllib name 'check_scramble';
|
||||
@ -440,6 +498,10 @@ uses
|
||||
{$ENDIF}
|
||||
|
||||
{ Some other useful functions }
|
||||
{$IFDEF mysql50}
|
||||
function modify_defaults_file(file_location:Pchar; option:Pchar; option_value:Pchar; section_name:Pchar; remove_option:longint):longint;cdecl;external mysqllib name 'load_defaults';
|
||||
{$ENDIF}
|
||||
|
||||
{$IFNDEF LinkDynamically}
|
||||
function load_defaults(conf_file:Pchar; groups:PPchar; argc:Plongint; argv:PPPchar):longint;cdecl;external mysqllib name 'load_defaults';
|
||||
function my_init:my_bool;cdecl;external mysqllib name 'my_init';
|
||||
@ -626,7 +688,11 @@ uses
|
||||
MYSQL_OPT_WRITE_TIMEOUT,MYSQL_OPT_USE_RESULT,
|
||||
MYSQL_OPT_USE_REMOTE_CONNECTION,MYSQL_OPT_USE_EMBEDDED_CONNECTION,
|
||||
MYSQL_OPT_GUESS_CONNECTION,MYSQL_SET_CLIENT_IP,
|
||||
MYSQL_SECURE_AUTH);
|
||||
MYSQL_SECURE_AUTH
|
||||
{$IFDEF MYSQL50}
|
||||
,MYSQL_REPORT_DATA_TRUNCATION, MYSQL_OPT_RECONNECT
|
||||
{$ENDIF}
|
||||
);
|
||||
|
||||
const
|
||||
MAX_MYSQL_MANAGER_ERR = 256;
|
||||
@ -706,6 +772,9 @@ uses
|
||||
methods_to_use : mysql_option;
|
||||
client_ip : Pchar;
|
||||
secure_auth : my_bool; // Refuse client connecting to server if it uses old (pre-4.1.1) protocol
|
||||
{$IFDEF mysql50}
|
||||
report_data_truncation : my_bool;// 0 - never report, 1 - always report (default)
|
||||
{$ENDIF}
|
||||
{ function pointers for local infile support }
|
||||
local_infile_init : function (_para1:Ppointer; _para2:Pchar; _para3:pointer):longint;cdecl;
|
||||
local_infile_read : function (_para1:pointer; _para2:Pchar; _para3:dword):longint;
|
||||
@ -759,6 +828,22 @@ uses
|
||||
CHARSET_INFO = charset_info_st;
|
||||
Pcharset_info_st = ^charset_info_st;
|
||||
|
||||
{$IFDEF mysql50}
|
||||
Pcharacter_set = ^character_set;
|
||||
character_set = record
|
||||
number : dword;
|
||||
state : dword;
|
||||
csname : Pchar;
|
||||
name : Pchar;
|
||||
comment : Pchar;
|
||||
dir : Pchar;
|
||||
mbminlen : dword;
|
||||
mbmaxlen : dword;
|
||||
end;
|
||||
MY_CHARSET_INFO = character_set;
|
||||
PMY_CHARSET_INFO = ^MY_CHARSET_INFO;
|
||||
{$ENDIF}
|
||||
|
||||
Pst_mysql_methods = ^st_mysql_methods;
|
||||
|
||||
Pst_mysql = ^st_mysql;
|
||||
@ -778,7 +863,7 @@ uses
|
||||
field_alloc : MEM_ROOT;
|
||||
affected_rows : my_ulonglong;
|
||||
insert_id : my_ulonglong; // id if insert on table with NEXTNR
|
||||
extra_info : my_ulonglong; // Used by mysqlshow
|
||||
extra_info : my_ulonglong; // Used by mysqlshow, not used by mysql 5.0 and up
|
||||
thread_id : dword; // Id for connection in server
|
||||
packet_length : dword;
|
||||
port : dword;
|
||||
@ -903,26 +988,106 @@ uses
|
||||
MYSQL_STMT_EXECUTE_DONE,MYSQL_STMT_FETCH_DONE
|
||||
);
|
||||
|
||||
{ bind structure }
|
||||
{
|
||||
Note: this info is from the mysql-5.0 version:
|
||||
|
||||
This structure is used to define bind information, and
|
||||
internally by the client library.
|
||||
Public members with their descriptions are listed below
|
||||
(conventionally `On input' refers to the binds given to
|
||||
mysql_stmt_bind_param, `On output' refers to the binds given
|
||||
to mysql_stmt_bind_result):
|
||||
|
||||
buffer_type - One of the MYSQL_* types, used to describe
|
||||
the host language type of buffer.
|
||||
On output: if column type is different from
|
||||
buffer_type, column value is automatically converted
|
||||
to buffer_type before it is stored in the buffer.
|
||||
buffer - On input: points to the buffer with input data.
|
||||
On output: points to the buffer capable to store
|
||||
output data.
|
||||
The type of memory pointed by buffer must correspond
|
||||
to buffer_type. See the correspondence table in
|
||||
the comment to mysql_stmt_bind_param.
|
||||
|
||||
The two above members are mandatory for any kind of bind.
|
||||
|
||||
buffer_length - the length of the buffer. You don't have to set
|
||||
it for any fixed length buffer: float, double,
|
||||
int, etc. It must be set however for variable-length
|
||||
types, such as BLOBs or STRINGs.
|
||||
|
||||
length - On input: in case when lengths of input values
|
||||
are different for each execute, you can set this to
|
||||
point at a variable containining value length. This
|
||||
way the value length can be different in each execute.
|
||||
If length is not NULL, buffer_length is not used.
|
||||
Note, length can even point at buffer_length if
|
||||
you keep bind structures around while fetching:
|
||||
this way you can change buffer_length before
|
||||
each execution, everything will work ok.
|
||||
On output: if length is set, mysql_stmt_fetch will
|
||||
write column length into it.
|
||||
|
||||
is_null - On input: points to a boolean variable that should
|
||||
be set to TRUE for NULL values.
|
||||
This member is useful only if your data may be
|
||||
NULL in some but not all cases.
|
||||
If your data is never NULL, is_null should be set to 0.
|
||||
If your data is always NULL, set buffer_type
|
||||
to MYSQL_TYPE_NULL, and is_null will not be used.
|
||||
|
||||
is_unsigned - On input: used to signify that values provided for one
|
||||
of numeric types are unsigned.
|
||||
On output describes signedness of the output buffer.
|
||||
If, taking into account is_unsigned flag, column data
|
||||
is out of range of the output buffer, data for this column
|
||||
is regarded truncated. Note that this has no correspondence
|
||||
to the sign of result set column, if you need to find it out
|
||||
use mysql_stmt_result_metadata.
|
||||
error - where to write a truncation error if it is present.
|
||||
possible error value is:
|
||||
0 no truncation
|
||||
1 value is out of range or buffer is too small
|
||||
|
||||
Please note that MYSQL_BIND also has internals members.
|
||||
}
|
||||
Pst_mysql_bind = ^st_mysql_bind;
|
||||
st_mysql_bind = record
|
||||
length : Pdword; // output length pointer
|
||||
is_null : Pmy_bool; // Pointer to null indicator
|
||||
buffer : pointer; // buffer to get/put data
|
||||
{$IFDEF mysql50}
|
||||
error: pmy_bool; // set this if you want to track data truncations happened during fetch
|
||||
{$ENDIF}
|
||||
buffer_type : enum_field_types; // buffer type
|
||||
buffer_length : dword; // buffer length, must be set for str/binary
|
||||
{ Following are for internal use. Set by mysql_stmt_bind_param }
|
||||
{$IFNDEF mysql50}
|
||||
inter_buffer : Pbyte; // for the current data position
|
||||
{$ELSE}
|
||||
row_ptr : PByte; // for the current data position
|
||||
{$ENDIF}
|
||||
offset : dword; // offset position for char/binary fetch
|
||||
{$IFNDEF mysql50}
|
||||
internal_length : dword; // Used if length is 0
|
||||
{$ELSE}
|
||||
length_value : dword; // Used if length is 0
|
||||
{$ENDIF}
|
||||
param_number : dword; // For null count and error messages
|
||||
pack_length : dword; // Internal length for packed data
|
||||
{$IFDEF mysql50}
|
||||
error_value : pmy_bool; // used if error is 0
|
||||
{$ENDIF}
|
||||
is_unsigned : my_bool; // set if integer type is unsigned
|
||||
long_data_used : my_bool; // If used with mysql_send_long_data
|
||||
{$IFNDEF mysql50}
|
||||
internal_is_null : my_bool; // Used if is_null is 0
|
||||
{$ELSE}
|
||||
is_null_value : my_bool; // Used if is_null is 0
|
||||
{$ENDIF}
|
||||
store_param_func : procedure (net:PNET; param:Pst_mysql_bind);cdecl;
|
||||
fetch_result : procedure (_para1:Pst_mysql_bind; row:PPbyte);
|
||||
fetch_result : procedure (_para1:Pst_mysql_bind; _para2:PMYSQL_FIELD; row:PPbyte);
|
||||
skip_result : procedure (_para1:Pst_mysql_bind; _para2:PMYSQL_FIELD; row:PPbyte);
|
||||
end;
|
||||
MYSQL_BIND = st_mysql_bind;
|
||||
@ -944,6 +1109,12 @@ uses
|
||||
for buffered, unbuffered and cursor fetch). }
|
||||
read_row_func : function (stmt:Pst_mysql_stmt; row:PPbyte):longint;cdecl;
|
||||
stmt_id : dword; // Id for prepared statement
|
||||
{$IFDEF mysql50}
|
||||
flags : dword; // i.e. type of cursor to open
|
||||
prefetch_rows : dword; // number of rows per one COM_FETCH
|
||||
server_status : dword; // Copied from mysql->server_status after execute/fetch to know
|
||||
// server-side cursor status for this statement.
|
||||
{$ENDIF}
|
||||
last_errno : dword; // error code
|
||||
param_count : dword; // input parameter count
|
||||
field_count : dword; // number of columns in result set
|
||||
@ -952,7 +1123,12 @@ uses
|
||||
sqlstate : array[0..(SQLSTATE_LENGTH+1)-1] of char;
|
||||
send_types_to_server : my_bool; // Types of input parameters should be sent to server
|
||||
bind_param_done : my_bool; // input buffers were supplied
|
||||
{$IFNDEF mysql50}
|
||||
bind_result_done : my_bool; // output buffers were supplied
|
||||
{$ELSE}
|
||||
bind_result_done : byte; // output buffers were supplied
|
||||
{$ENDIF}
|
||||
|
||||
unbuffered_fetch_cancelled : my_bool; // mysql_stmt_close() had to cancel this result
|
||||
{ Is set to true if we need to calculate field->max_length for
|
||||
metadata fields when doing mysql_stmt_store_result. }
|
||||
@ -964,7 +1140,13 @@ uses
|
||||
where this was done automatically.
|
||||
In the new API we do that only by request because it slows down
|
||||
mysql_stmt_store_result sufficiently. }
|
||||
enum_stmt_attr_type = (STMT_ATTR_UPDATE_MAX_LENGTH);
|
||||
enum_stmt_attr_type = (STMT_ATTR_UPDATE_MAX_LENGTH
|
||||
{$IFDEF mysql50}
|
||||
,STMT_ATTR_CURSOR_TYPE, // unsigned long with combination of cursor flags (read only, for update, etc)
|
||||
STMT_ATTR_PREFETCH_ROWS // Amount of rows to retrieve from server per one fetch if using cursors.
|
||||
// Accepts unsigned long attribute in the range 1 - ulong_max
|
||||
{$ENDIF}
|
||||
);
|
||||
|
||||
|
||||
//#define max_allowed_packet (*mysql_get_parameters()->p_max_allowed_packet)
|
||||
@ -1076,11 +1258,17 @@ uses
|
||||
{ perform query on slave }
|
||||
function mysql_slave_query(mysql:PMYSQL; q:Pchar; length:dword):my_bool;extdecl;external mysqllib name 'mysql_slave_query';
|
||||
function mysql_slave_send_query(mysql:PMYSQL; q:Pchar; length:dword):my_bool;extdecl;external mysqllib name 'mysql_slave_send_query';
|
||||
{$IFDEF mysql50}
|
||||
procedure mysql_get_character_set_info(mysql : PMYSQL; charset : PMY_CHARSET_INFO);extdecl;external mysqllib name 'mysql_get_character_set_info';
|
||||
{$ENDIF}
|
||||
{$ENDIF}
|
||||
|
||||
{ local infile support }
|
||||
|
||||
const
|
||||
LOCAL_INFILE_ERROR_LEN = 512;
|
||||
|
||||
{$IFNDEF LinkDynamically}
|
||||
{ procedure mysql_set_local_infile_handler(mysql:PMYSQL; local_infile_init:function (_para1:Ppointer; _para2:Pchar; _para3:pointer):longint; local_infile_read:function (_para1:pointer; _para2:Pchar; _para3:dword):longint; local_infile_end:procedure (_pa
|
||||
_para6:pointer);cdecl;external mysqllib name 'mysql_set_local_infile_handler';}
|
||||
procedure mysql_set_local_infile_default(mysql:PMYSQL);cdecl;external mysqllib name 'mysql_set_local_infile_default';
|
||||
@ -1150,7 +1338,6 @@ uses
|
||||
function mysql_manager_fetch_line(con:PMYSQL_MANAGER; res_buf:Pchar; res_buf_size:longint):longint;extdecl;external mysqllib name 'mysql_manager_fetch_line';
|
||||
function mysql_read_query_result(mysql:PMYSQL):my_bool;extdecl;external mysqllib name 'mysql_read_query_result';
|
||||
|
||||
|
||||
function mysql_stmt_init(mysql:PMYSQL):PMYSQL_STMT;extdecl;external mysqllib name 'mysql_stmt_init';
|
||||
function mysql_stmt_prepare(stmt:PMYSQL_STMT; query:Pchar; length:dword):longint;extdecl;external mysqllib name 'mysql_stmt_prepare';
|
||||
function mysql_stmt_execute(stmt:PMYSQL_STMT):longint;extdecl;external mysqllib name 'mysql_stmt_execute';
|
||||
@ -1178,6 +1365,7 @@ uses
|
||||
function mysql_stmt_affected_rows(stmt:PMYSQL_STMT):my_ulonglong;extdecl;external mysqllib name 'mysql_stmt_affected_rows';
|
||||
function mysql_stmt_insert_id(stmt:PMYSQL_STMT):my_ulonglong;extdecl;external mysqllib name 'mysql_stmt_insert_id';
|
||||
function mysql_stmt_field_count(stmt:PMYSQL_STMT):dword;extdecl;external mysqllib name 'mysql_stmt_field_count';
|
||||
|
||||
function mysql_commit(mysql:PMYSQL):my_bool;extdecl;external mysqllib name 'mysql_commit';
|
||||
function mysql_rollback(mysql:PMYSQL):my_bool;extdecl;external mysqllib name 'mysql_rollback';
|
||||
function mysql_autocommit(mysql:PMYSQL; auto_mode:my_bool):my_bool;extdecl;external mysqllib name 'mysql_autocommit';
|
||||
@ -1225,13 +1413,42 @@ uses
|
||||
mysql_next_result: function (mysql:PMYSQL):longint;extdecl;
|
||||
mysql_close: procedure (sock:PMYSQL);extdecl;
|
||||
|
||||
mysql_stmt_init: function (mysql:PMYSQL):PMYSQL_STMT;extdecl;
|
||||
mysql_stmt_prepare: function (stmt:PMYSQL_STMT; query:Pchar; length:dword):longint;extdecl;
|
||||
mysql_stmt_execute: function (stmt:PMYSQL_STMT):longint;extdecl;
|
||||
mysql_stmt_fetch: function (stmt:PMYSQL_STMT):longint;extdecl;
|
||||
mysql_stmt_fetch_column: function (stmt:PMYSQL_STMT; bind:PMYSQL_BIND; column:dword; offset:dword):longint;extdecl;
|
||||
mysql_stmt_store_result: function (stmt:PMYSQL_STMT):longint;extdecl;
|
||||
mysql_stmt_param_count: function (stmt:PMYSQL_STMT):dword;extdecl;
|
||||
mysql_stmt_attr_set: function (stmt:PMYSQL_STMT; attr_type:enum_stmt_attr_type; attr:pointer):my_bool;extdecl;
|
||||
mysql_stmt_attr_get: function (stmt:PMYSQL_STMT; attr_type:enum_stmt_attr_type; attr:pointer):my_bool;extdecl;
|
||||
mysql_stmt_bind_param: function (stmt:PMYSQL_STMT; bnd:PMYSQL_BIND):my_bool;extdecl;
|
||||
mysql_stmt_bind_result: function (stmt:PMYSQL_STMT; bnd:PMYSQL_BIND):my_bool;extdecl;
|
||||
mysql_stmt_close: function (stmt:PMYSQL_STMT):my_bool;extdecl;
|
||||
mysql_stmt_reset: function (stmt:PMYSQL_STMT):my_bool;extdecl;
|
||||
mysql_stmt_free_result: function (stmt:PMYSQL_STMT):my_bool;extdecl;
|
||||
mysql_stmt_send_long_data: function (stmt:PMYSQL_STMT; param_number:dword; data:Pchar; length:dword):my_bool;extdecl;
|
||||
mysql_stmt_result_metadata: function (stmt:PMYSQL_STMT):PMYSQL_RES;extdecl;
|
||||
mysql_stmt_param_metadata: function (stmt:PMYSQL_STMT):PMYSQL_RES;extdecl;
|
||||
mysql_stmt_errno: function (stmt:PMYSQL_STMT):dword;extdecl;
|
||||
mysql_stmt_error: function (stmt:PMYSQL_STMT):Pchar;extdecl;
|
||||
mysql_stmt_sqlstate: function (stmt:PMYSQL_STMT):Pchar;extdecl;
|
||||
mysql_stmt_row_seek: function (stmt:PMYSQL_STMT; offset:MYSQL_ROW_OFFSET):MYSQL_ROW_OFFSET;extdecl;
|
||||
mysql_stmt_row_tell: function (stmt:PMYSQL_STMT):MYSQL_ROW_OFFSET;extdecl;
|
||||
mysql_stmt_data_seek: procedure (stmt:PMYSQL_STMT; offset:my_ulonglong);extdecl;
|
||||
mysql_stmt_num_rows: function (stmt:PMYSQL_STMT):my_ulonglong;extdecl;
|
||||
mysql_stmt_affected_rows: function (stmt:PMYSQL_STMT):my_ulonglong;extdecl;
|
||||
mysql_stmt_insert_id: function (stmt:PMYSQL_STMT):my_ulonglong;extdecl;
|
||||
mysql_stmt_field_count: function (stmt:PMYSQL_STMT):dword;extdecl;
|
||||
|
||||
{$ENDIF}
|
||||
|
||||
|
||||
{ status return codes }
|
||||
|
||||
const
|
||||
MYSQL_NO_DATA = 100;
|
||||
MYSQL_NO_DATA = 100;
|
||||
MYSQL_DATA_TRUNCATED = 101;
|
||||
|
||||
function mysql_reload(mysql : PMySQL) : longint;
|
||||
|
||||
@ -1256,8 +1473,8 @@ uses
|
||||
{$endif}
|
||||
|
||||
{$IFDEF LinkDynamically}
|
||||
Procedure InitialiseMysql4;
|
||||
Procedure ReleaseMysql4;
|
||||
Procedure InitialiseMysql;
|
||||
Procedure ReleaseMysql;
|
||||
|
||||
var Mysql4LibraryHandle : TLibHandle;
|
||||
{$ENDIF}
|
||||
@ -1268,7 +1485,7 @@ implementation
|
||||
|
||||
var RefCount : integer;
|
||||
|
||||
Procedure InitialiseMysql4;
|
||||
Procedure InitialiseMysql;
|
||||
|
||||
begin
|
||||
inc(RefCount);
|
||||
@ -1354,11 +1571,37 @@ begin
|
||||
pointer(mysql_use_result) := GetProcedureAddress(Mysql4LibraryHandle,'mysql_use_result');
|
||||
pointer(mysql_warning_count) := GetProcedureAddress(Mysql4LibraryHandle,'mysql_warning_count');
|
||||
|
||||
|
||||
pointer(mysql_stmt_init) := GetProcedureAddress(Mysql4LibraryHandle,'mysql_stmt_init');
|
||||
pointer(mysql_stmt_prepare) := GetProcedureAddress(Mysql4LibraryHandle,'mysql_stmt_prepare');
|
||||
pointer(mysql_stmt_execute) := GetProcedureAddress(Mysql4LibraryHandle,'mysql_stmt_execute');
|
||||
pointer(mysql_stmt_fetch) := GetProcedureAddress(Mysql4LibraryHandle,'mysql_stmt_fetch');
|
||||
pointer(mysql_stmt_fetch_column) := GetProcedureAddress(Mysql4LibraryHandle,'mysql_stmt_fetch_column');
|
||||
pointer(mysql_stmt_store_result) := GetProcedureAddress(Mysql4LibraryHandle,'mysql_stmt_store_result');
|
||||
pointer(mysql_stmt_param_count) := GetProcedureAddress(Mysql4LibraryHandle,'mysql_stmt_param_count');
|
||||
pointer(mysql_stmt_attr_set) := GetProcedureAddress(Mysql4LibraryHandle,'mysql_stmt_attr_set');
|
||||
pointer(mysql_stmt_attr_get) := GetProcedureAddress(Mysql4LibraryHandle,'mysql_stmt_attr_get');
|
||||
pointer(mysql_stmt_bind_param) := GetProcedureAddress(Mysql4LibraryHandle,'mysql_stmt_bind_param');
|
||||
pointer(mysql_stmt_bind_result) := GetProcedureAddress(Mysql4LibraryHandle,'mysql_stmt_bind_result');
|
||||
pointer(mysql_stmt_close) := GetProcedureAddress(Mysql4LibraryHandle,'mysql_stmt_close');
|
||||
pointer(mysql_stmt_reset) := GetProcedureAddress(Mysql4LibraryHandle,'mysql_stmt_reset');
|
||||
pointer(mysql_stmt_free_result) := GetProcedureAddress(Mysql4LibraryHandle,'mysql_stmt_free_result');
|
||||
pointer(mysql_stmt_send_long_data) := GetProcedureAddress(Mysql4LibraryHandle,'mysql_stmt_send_long_data');
|
||||
pointer(mysql_stmt_result_metadata) := GetProcedureAddress(Mysql4LibraryHandle,'mysql_stmt_result_metadata');
|
||||
pointer(mysql_stmt_param_metadata) := GetProcedureAddress(Mysql4LibraryHandle,'mysql_stmt_param_metadata');
|
||||
pointer(mysql_stmt_errno) := GetProcedureAddress(Mysql4LibraryHandle,'mysql_stmt_errno');
|
||||
pointer(mysql_stmt_error) := GetProcedureAddress(Mysql4LibraryHandle,'mysql_stmt_error');
|
||||
pointer(mysql_stmt_sqlstate) := GetProcedureAddress(Mysql4LibraryHandle,'mysql_stmt_sqlstate');
|
||||
pointer(mysql_stmt_row_seek) := GetProcedureAddress(Mysql4LibraryHandle,'mysql_stmt_row_seek');
|
||||
pointer(mysql_stmt_row_tell) := GetProcedureAddress(Mysql4LibraryHandle,'mysql_stmt_row_tell');
|
||||
pointer(mysql_stmt_data_seek) := GetProcedureAddress(Mysql4LibraryHandle,'mysql_stmt_data_seek');
|
||||
pointer(mysql_stmt_num_rows) := GetProcedureAddress(Mysql4LibraryHandle,'mysql_stmt_num_rows');
|
||||
pointer(mysql_stmt_affected_rows) := GetProcedureAddress(Mysql4LibraryHandle,'mysql_stmt_affected_rows');
|
||||
pointer(mysql_stmt_insert_id) := GetProcedureAddress(Mysql4LibraryHandle,'mysql_stmt_insert_id');
|
||||
pointer(mysql_stmt_field_count) := GetProcedureAddress(Mysql4LibraryHandle,'mysql_stmt_field_count');
|
||||
end;
|
||||
end;
|
||||
|
||||
Procedure ReleaseMysql4;
|
||||
Procedure ReleaseMysql;
|
||||
|
||||
begin
|
||||
if RefCount > 0 then dec(RefCount);
|
||||
@ -1397,7 +1640,11 @@ end;
|
||||
|
||||
function IS_NUM(t : enum_field_types) : boolean;
|
||||
begin
|
||||
{$IFDEF mysql50}
|
||||
IS_NUM := (t <= FIELD_TYPE_INT24) or (t=FIELD_TYPE_YEAR) or (t=FIELD_TYPE_NEWDECIMAL);
|
||||
{$ELSE}
|
||||
IS_NUM := (t <= FIELD_TYPE_INT24) or (t=FIELD_TYPE_YEAR);
|
||||
{$ENDIF}
|
||||
end;
|
||||
|
||||
function INTERNAL_NUM_FIELD(f : Pst_mysql_field) : boolean;
|
||||
|
12
packages/base/mysql/mysql50.pp
Normal file
12
packages/base/mysql/mysql50.pp
Normal file
@ -0,0 +1,12 @@
|
||||
{
|
||||
Contains the mysql calls for MySQL 5.0
|
||||
}
|
||||
|
||||
unit mysql50;
|
||||
|
||||
{$UNDEF LinkDynamically}
|
||||
{$DEFINE MYSQL50}
|
||||
|
||||
{$i mysql.inc}
|
||||
|
||||
end.
|
12
packages/base/mysql/mysql50dyn.pp
Normal file
12
packages/base/mysql/mysql50dyn.pp
Normal file
@ -0,0 +1,12 @@
|
||||
{
|
||||
Contains the mysql calls for MySQL 5.0
|
||||
}
|
||||
|
||||
unit mysql50dyn;
|
||||
|
||||
{$DEFINE LinkDynamically}
|
||||
{$DEFINE MYSQL50}
|
||||
|
||||
{$i mysql.inc}
|
||||
|
||||
end.
|
Loading…
Reference in New Issue
Block a user