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
25914
November 17, 2005 04:00AM
17041
November 17, 2005 06:58AM
24022
November 19, 2005 08:53AM
14862
February 23, 2006 02:28AM
11138
February 23, 2006 04:42AM
15852
February 24, 2006 08:28AM
8776
February 24, 2006 10:15AM
6555
February 24, 2006 12:42PM
8205
February 27, 2006 08:56AM
6939
February 27, 2006 11:27AM
19175
February 28, 2006 05:22AM
Delphi source for Error procedure.
6870
December 20, 2006 03:34AM
4347
November 18, 2008 08:28AM
5041
November 18, 2008 12:45PM
6557
December 19, 2006 11:00AM
5275
December 19, 2006 02:35PM
6524
December 19, 2006 07:53PM
4673
December 20, 2006 03:37AM
4905
December 19, 2006 11:01AM
5791
November 24, 2006 05:32AM
4749
November 24, 2006 07:02AM
3888
December 23, 2008 06:08AM
11722
February 25, 2006 11:48PM
5225
December 19, 2007 04:24AM
4250
December 24, 2008 01:02PM
5016
December 19, 2007 03:59AM
4930
December 19, 2007 05:09AM
3761
November 18, 2008 08:25AM
4180
November 18, 2008 12:49PM
6315
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.