Co jest źle w tej funkcji ? Bo ona jest poprawnie napisana, a mimo to pokazuje błąd...
DELIMITER //
CREATE FUNCTION odpal()
RETURNS int DETERMINISTIC MODIFIES SQL DATA
BEGIN
DECLARE zwrot varchar(100) DEFAULT '';
DECLARE i int DEFAULT 0;
DECLARE id int DEFAULT 0;
DECLARE maxx int DEFAULT 0;
SET maxx=(SELECT MAX(`pID`) FROM `tabela2`);
pobierz_ID: WHILE i<maxx DO
SET id=(SELECT `pID` FROM `tabela2`);
i=i+1;
END WHILE pobierz_ID;
RETURN id;
END; //
DELIMITER ;
SELECT odpal();
DROP FUNCTION odpal;
wywala mi błąd
#1064 - Something is wrong in your syntax obok '=i+1;
END WHILE pobierz_ID;
RETURN id;
END' w linii 13
w tej funkcji chodzi o to, aby pobrała ile jest MAX ilość rekordów i w pętli chcę aby mi zwracało ID rekordu.
Chciałbym jeszcze się zapytać czy w funkcjach SQL jest możliwość wyświetlania wyników przebiegu pętli tak, jak to ma miejsce w C++ ?