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
24997
November 17, 2005 04:00AM
16707
November 17, 2005 06:58AM
23658
November 19, 2005 08:53AM
14485
February 23, 2006 02:28AM
10773
February 23, 2006 04:42AM
15432
February 24, 2006 08:28AM
8472
February 24, 2006 10:15AM
6250
February 24, 2006 12:42PM
7878
February 27, 2006 08:56AM
6678
February 27, 2006 11:27AM
18862
February 28, 2006 05:22AM
Delphi source for Error procedure.
6522
December 20, 2006 03:34AM
4080
November 18, 2008 08:28AM
4732
November 18, 2008 12:45PM
6139
December 19, 2006 11:00AM
4945
December 19, 2006 02:35PM
6199
December 19, 2006 07:53PM
4392
December 20, 2006 03:37AM
4601
December 19, 2006 11:01AM
5479
November 24, 2006 05:32AM
4455
November 24, 2006 07:02AM
3600
December 23, 2008 06:08AM
11132
February 25, 2006 11:48PM
4934
December 19, 2007 04:24AM
3907
December 24, 2008 01:02PM
4751
December 19, 2007 03:59AM
4613
December 19, 2007 05:09AM
3510
November 18, 2008 08:25AM
3890
November 18, 2008 12:49PM
5991
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.