, , . Borland Delphi. EMPLOYEE.GDB. , . , COLLATE . , , , . , , DLL Delphi.
library TestUDF;
uses SysUtils;
function malloc(Size: Integer): Pointer; cdecl; external
'msvcrt.dll';
function StrUpperCase(sz: PChar): PChar; cdecl; export;
var Tmp: string;
begin
Tmp:= AnsiUpperCase(sz);
Result:= malloc(length(Tmp) + 1);
StrPCopy(Result, Tmp); end; exports
StrUpperCase; begin end.
: StrUpperCase. , , Pchar, . . , #0. : sz , AnsiUpperCase. , . , malloc - Windows. Tmp Result. TestUDF.dll . InterBase 6.x , \Udf, . . DECLARE EXTERNAL j FUNCTION, .
DECLARE EXTERNAL FUNCTION name [datatype | CSTRING (int)
[, datatype CSTRING (int)...] ]
RETURNS {datatype [BY VALUE] | CSTRING (int)} [FREE_IT]
ENTRY_POINT 'entryname'.
MODULE_NAME 'modulename';
name - . DLL. datatype . :
;
( ) ;
.
, CSTRING. . c , , . FREE_IT InterBase, , . , , - .
|
|
entryname DLL, .
modulename DLL, .
, entryname modulename .
, , .
DECLARE EXTERNAL FUNCTION USTRUPPERCASE cstring(254)
RETURNS cstring(254) FREE_IT ENTRY_POINT 'StrUpperCase' MODULE_NAME 'TestUDF.dll1
USTRUPPERCASE SQL-. , , .
SELECT USTRUPPERCASE(DEPARTMENT) FROM DEPARTMENT
DEPARTMENT (. 1.5).
, SQL- User Defined Functions. , , - . , InterBase - NULL-. "" SQL .
UDF-, www.InterBase-world.com www.ibase.ru.