|
| ||||||||||||
| ||||||||||||
|
2004 г
Алексей Паутов,MySQL: Руководство разработчика. Версия 1.0. 20 апреля 2004 г.Алексей Паутов,Все о MySQL на русском: http://www.botik.ru/~rldp/mysql.htm, ftp://ftp.botik.ru/rented/rldp/www/pub Russian LDP: http://www.botik.ru/~rldp, ftp://ftp.botik.ru/rented/rldp 6.5 Пакет TmySQL 1.0.0.99XXXX6.5.1 ВведениеTmySQL представляет собой набор классов, которые могут использоваться в delphi наряду с файлом libmysql.dll. Это альтернативный интерфейс, заменяющий собой описанный выше. 6.5.2 УстановкаПросто распакуйте архив в любой удобный Вам каталог и включите его в соответствующий проект для Delphi. Требуемый файл libmysql.dll включен в архив (Version 3.22.14-gamma, ее стоит заменить более свежей). 6.5.3 Интерфейсunit MySql;
interface
uses classes, dialogs, sysutils;
type
TField = class
public
Name: String;
FieldType: String;
Constructor Create(aName: String);
end;
TFields = class
public
Constructor Create(res: pmysql_res);
Destructor Destroy; override;
Function Count: Integer;
Property Fields[Index: Integer]: TField read getField; default;
Procedure Add(Value: TField);
end;
TTable = class
public
Name: String;
Fields: TFields;
Constructor Create(aMySql: pmysql; aName: String);
Destructor Destroy; override;
end;
TTables = class
public
Constructor Create(aMySql: pmysql; aName: String);
Destructor Destroy; override;
Function Count: Integer;
Property Tables[Index: Integer]: TTable read getTable; default;
Procedure Add(Value: TTable);
end;
TDatabase = class
public
Name: String;
Selected: Boolean;
Tables: TTables;
Constructor Create(aMySql: pmysql; aName: String);
Destructor Destroy; override;
Function Select: Boolean;
end;
TDatabases = class
public
Constructor Create(aMySql: pmysql);
Destructor Destroy; override;
Function Count: Integer;
Property Databases[Index: Integer]: TDatabase
read getDatabase; default;
Procedure Add(Value: TDatabase);
end;
TRow = class
public
Constructor Create(aRow: TStringList);
Destructor Destroy; override;
Function Count: Integer;
Property Databases[Index: Integer]: String read getValue; default;
Procedure Add(Value: String);
end;
TRows = class
public
Constructor Create(res: pmysql_res; Count: Integer);
Destructor Destroy; override;
Function Count: Integer;
Property Rows[Index: Integer]: TRow read getRow; default;
Procedure Add(Value: TRow);
end;
TResult = class
public
Rows: TRows;
Fields: TFields;
AffectedRows: Integer;
Constructor Create(res: pmysql_res; aMySql: pmysql);
Destructor Destroy; override;
Function lastError: String;
end;
TMySql = class
public
class function ClientVersion: String;
constructor CreateConnect(aHost, aUser, aPassword: String;
aPort: Integer);
destructor Destroy; override;
function Connect: Boolean;
function Disconnect: Boolean;
function Connected: boolean;
Property Name: String read getName write setName;
Property Host: String read getHost write setHost;
Property User: String read getUser write setUser;
Property Password: String read getPassword write setPassword;
Property Port: Integer read getPort write setPort;
function getVersion: String;
function getHostInfo: String;
function getProtocolVersion: Integer;
function getThreadId: Longint;
function getStat: String;
function getProcesses: TResult;
function getDatabases: TDatabases;
function Query(sql: String): TResult;
function SelectDb(d: String): Boolean;
function CreateDb(name: String): Boolean;
function DeleteDb(name: String): Boolean;
function RefreshGrants: Boolean;
end;
6.5.4 ИспользованиеЕдинственный класс, который должен когда-либо создаваться пользователем: TmySQL. Другие будут созданы и разрушены автоматически. Чтобы создать TmySQL, используйте Create или CreateConnect, который пробует соединиться сразу же. TmySQL.getDatabases возвращает: TDatabases, TDatabase, TTables, TTable, TFields, TField. TmySQL.Query и TmySQL.getProcesses возвращают: TResult, TFields, TField, TRows, TRow, String. 6.5.5 Copyright и распространениеЭта программа имеет статус freeware, for personal use. Для коммерческого использования пакет стоит US$ 20 за лицензию. К тому же, к ней будут приложены все исходные тексты интерфейсного пакета. С разработчиком можно связаться по адресу: Hillware I/S Dennis Thrys°e Solvangsvej 6, st, th DK-9000 Aalborg mailto:qabi@mindless.com http://members.xoom.com/qabi This product is: |
|
CITForum © 1997–2025