Gemäß Dokumentation zu benutzerdefinierten Funktionen in MySQL
Sie können nur Werte vom Typ {STRING|INTEGER|REAL|DECIMAL}
zurückgeben
CREATE [AGGREGATE] FUNCTION function_name RETURNS {STRING|INTEGER|REAL|DECIMAL}
SONAME shared_library_name
Wenn Sie einen select
Ergebnismenge müssen Sie eine procedure
definieren aber nicht function
.
DELIMITER //
DROP PROCEDURE IF EXISTS myProcedure //
CREATE PROCEDURE
myProcedure( id INT )
BEGIN
SELECT * FROM board
-- add where condition if required
WHERE Col_name = id
;
END
//
DELIMITER ;
Und Sie können Prozeduren wie
aufrufencall myProcedure( 6 )
Das gibt implizite Objekte basierend auf den in der Prozedur verwendeten Anweisungen zurück.