Ich versuche eine Funktion in Postgresq zu erstellen, um eine zufällige vorhersagbare Zeichenfolge (als Benutzer und Kennwort) zu erstellen. Ich schrieb den folgenden Code:Wie benutze ich setseed in einer Funktion in postgresql
CREATE OR REPLACE FUNCTION colon.random_user_or_password(integer)
RETURNS text AS
$BODY$
DECLARE
letras_o_numeros TEXT[];
letras_o_numeros_longitud INT;
rand_user_or_pass TEXT;
seed REAL;
BEGIN
letras_o_numeros=array['a','b','c','d','e','f','g','h','i','j','k','l','m','o','p','q','r','s','t','u','b','w','x','y','z','A','B','C','D','E',
'F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','1','2','3','4','5','6','7','8','9'];
letras_o_numeros_longitud=array_length(letras_o_numeros, 1);
rand_user_or_pass='';
seed=$1/power(10,ceil(log($1)));
setseed(seed);
WHILE char_length(rand_user_or_pass)<8 LOOP
rand_user_or_pass=rand_user_or_pass||letras_o_numeros[ceil(random()*letras_o_numeros_longitud)];
END LOOP;
RETURN rand_user_or_pass;
END
$BODY$
LANGUAGE plpgsql VOLATILE
COST 100;
aber wenn ich versuche, um die Funktion zu erstellen, es gibt mir die folgende Fehlermeldung: Syntaxfehler bei oder in der Nähe von setseed (Samen) in Zeile 15. Wie diese Funktion verwendet wird?