GoatMachine
Benutzer
- Beiträge
- 23
Hallo, ich würde gerne eine eigene Funktion erstellen, die meine SQL Befehle etwas übersichtlicher gestalten könnte und vor allem die komplette Seite Redundanzenfreier macht.
Aus diesem Grund wollte ich anfangen, aus den group_concat Funktionen die ich habe, eine Stored Function zu kreieren. Leider funktioniert das ganze nicht so wie gewollt.
Ich nutze die MariaDB in der Version 5.5.32.
Versuch 1:
Befehl wird ausgeführt, doch wenn ich die Funktion später aufrufen will, bekomme ich nur null Werte.
Versuch 2
Diesen Befehl kann ich noch nicht einmal ausführen, dort bekomme ich direkt eine Fehlermeldung:
Hat vielleicht jemand eine Idee, wo der Fehler liegt? Ich habe mich das erste mal an Stored Functions versucht.
Aus diesem Grund wollte ich anfangen, aus den group_concat Funktionen die ich habe, eine Stored Function zu kreieren. Leider funktioniert das ganze nicht so wie gewollt.
Ich nutze die MariaDB in der Version 5.5.32.
Versuch 1:
PHP:
DELIMITER $$
CREATE FUNCTION SprachenListe(
paramTable VARCHAR( 50 )
) RETURNS TEXT DETERMINISTIC BEGIN
DECLARE Ausgabe TEXT;
SET @tableName = paramTable;
SELECT GROUP_CONCAT( DISTINCT @tableName.Sprache ORDER BY @tableName.Sprache SEPARATOR '/' ) INTO Ausgabe;
RETURN(Ausgabe);
END ;
$$
DELIMITER ;
Versuch 2
PHP:
DELIMITER $$
CREATE FUNCTION SprachenListe(
paramTable VARCHAR( 50 )
) RETURNS TEXT DETERMINISTIC BEGIN
DECLARE Ausgabe TEXT;
SET @tableName = paramTable;
SELECT GROUP_CONCAT( DISTINCT @tableName.Sprache ORDER BY @tableName.Sprache SEPARATOR '/' ) INTO Ausgabe FROM @tableName;
RETURN(Ausgabe);
END ;
$$
DELIMITER ;
Diesen Befehl kann ich noch nicht einmal ausführen, dort bekomme ich direkt eine Fehlermeldung:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '@tableName; RETURN(Ausgabe); END' at line 6
Hat vielleicht jemand eine Idee, wo der Fehler liegt? Ich habe mich das erste mal an Stored Functions versucht.