MySQL Forums
Forum List  »  Triggers

Delphi source for Error procedure.
Posted by: Zigmund Bulinsh
Date: December 20, 2006 03:34AM

Copy to MySQL bin folder. Then execute command:
create function Error returns integer soname 'LibError.dll';
//LibError.dpr:
library LibError;

uses
SysUtils;

//mysql.h definitions - begin
const
STRING_RESULT = 0;
REAL_RESULT = 1;
INT_RESULT = 2;
ROW_RESULT = 3;
DECIMAL_RESULT= 4;

type
my_bool = byte;
uint = LongWord;
ulong = int64;
ppChar = ^pChar;
puint = ^uint;
pUlong = ^ulong;

ItemResult = STRING_RESULT..DECIMAL_RESULT;
pItemResult = ^ItemResult;

pByte = ^byte;
pDouble = ^Double;

ItemResultArr = array [1..1000] of integer;
CharArr = array [1..1000] of pChar;
uintArr = array [1..1000] of uint;
ByteArr = array [1..1000] of byte;
Int64Arr = array [1..1000] of int64;

pItemResultArr = ^ItemResultArr;
pCharArr = ^CharArr;
puintArr = ^uintArr;
pByteArr = ^ByteArr;
pInt64Arr= ^Int64Arr;

pUDF_ARGS = ^UDF_ARGS;
UDF_ARGS = packed record
arg_count:uint;
arg_type:pItemResultArr;
args:pCharArr;
lengths:puintArr;
maybe_null:pByteArr;
attributes:pCharArr;
attribute_lengths:puintArr;
end;

pUDF_INIT = ^UDF_INIT;
UDF_INIT = packed record
maybe_null: my_bool;
decimals : uint;
max_length: uint;
ptr : pChar;
const_item: my_bool;
end;
//mysql.h definitions - end

//Main function definition start
function Error_init(initid: pUDF_INIT; _args: pUDF_ARGS; _message: PChar): ulong; cdecl;
begin
Result := 1;
if _args^.arg_count = 1 then
if _args^.arg_type^[1] = STRING_RESULT then
StrCopy(_message, _args^.args^[1]);
end;

procedure Error_deinit(initid: pUDF_INIT); cdecl;
begin
end;

function Error(initid: pUDF_INIT; _args: pUDF_ARGS; is_null, error: PChar): ulong; cdecl;
begin
end;
//end of main function definition

exports
Error_init,
Error_deinit,
Error;

begin
end.

You can also check for some info at http://gurudelphi.googlepages.com



Edited 1 time(s). Last edit at 03/10/2008 03:14AM by Zigmund Bulinsh.

Options: ReplyQuote


Subject
Views
Written By
Posted
25417
November 17, 2005 04:00AM
16870
November 17, 2005 06:58AM
23826
November 19, 2005 08:53AM
14648
February 23, 2006 02:28AM
10917
February 23, 2006 04:42AM
15650
February 24, 2006 08:28AM
8609
February 24, 2006 10:15AM
6387
February 24, 2006 12:42PM
8013
February 27, 2006 08:56AM
6798
February 27, 2006 11:27AM
19004
February 28, 2006 05:22AM
Delphi source for Error procedure.
6670
December 20, 2006 03:34AM
4197
November 18, 2008 08:28AM
4866
November 18, 2008 12:45PM
6319
December 19, 2006 11:00AM
5090
December 19, 2006 02:35PM
6339
December 19, 2006 07:53PM
4513
December 20, 2006 03:37AM
4730
December 19, 2006 11:01AM
5611
November 24, 2006 05:32AM
4584
November 24, 2006 07:02AM
3725
December 23, 2008 06:08AM
11419
February 25, 2006 11:48PM
5060
December 19, 2007 04:24AM
4050
December 24, 2008 01:02PM
4860
December 19, 2007 03:59AM
4738
December 19, 2007 05:09AM
3611
November 18, 2008 08:25AM
3995
November 18, 2008 12:49PM
6139
December 19, 2007 04:46AM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.