Ähnlich wie Stored Procedures aber es gibt ein paar Unterschiede:
- Die Parameterliste einer Funktion darf nur IN-Parameter enthalten. Out- und INOUT-Parameter sind nicht zulässig.
- Die Angabe des In-Schlüsselworts ist weder erforderlich noch zulässig.
- Die Funktion selbst muss einen einzelnen Wert zurückgeben, dessen Typ im Header der Funktion definiert ist.
- Funktionen können in SQL-Anweisungen aufgerufen werden.
- Eine Funktion gibt möglicherweise keine Ergebnismenge zurück
Definition
DELIMITER ||
CREATE FUNCTION <FunctionName> (<variable> <Datatype>[, ...])
[RETURNS <Datentyp>]
NO SQL DETERMINISTIC
BEGIN
#Code
[RETURN <Value>; ]
END ||
DELIMITER ;Aufruf
SELECT <FunctionName>([paramValue])Löschen
DROP FUNCTION [IF EXISTS] <FunctionName>;