Stored Functions and Stored Procedures
Was ist eine Stored Function?
Eine Stored Function ist analog zu den Funktionen zu sehen, die im Kapitel „DRL 1.1 Operatoren und Funktionen“ vorgestellt wurden. Hier kann aber nun der Entwickler eine Funktion mit der fachliche / technisch benötigten Logik implementieren und diese in SQL Statements verwenden.
Die Stored Function in MySQL ist nicht zu verwechseln mit der USER DEFINIED FUNCTION. Bei dieser handelt es sich um ein externen, compilierten Code, der eingebunden wird.
Wie wird eine Stored Function implementiert?
CREATE [DEFINER = { user | CURRENT_USER }]
FUNCTION sp_name ([func_parameter[,…]])
RETURNS type [characteristic …]
routine_body
func_parameter: param_name type
type: Any valid MySQL data type
characteristic: COMMENT ’string‘ | LANGUAGE SQL | [NOT] DETERMINISTIC | { CONTAINS SQL | NO SQL | READS SQL DATA | MODIFIES SQL DATA } | SQL SECURITY { DEFINER | INVOKER }
routine_body: Valid SQL routine statement