Salve ho un problema con una funzione
La funzione prova (varchar) dovrebbe prendere nome della tabella fornito in input e fare un'interrogazione alla stessa tabella ( nel codice per semplificare ho scritto di ricercare il minimo)
però dal comando per richiamare la funzione
select prova ('Casa')
mi da l'errore ovviamente: Non esiste la tabella Nometabella (nome della variabile che dovrebbe contenere il valore casa passato alla funzione)
come faccio ad indicare nella funzione che voglio il valore??
Non mi sarò spiegato bene qui comunque sta il codice
DELIMITER $$
DROP FUNCTION Prova$$
CREATE FUNCTION Prova(Nometabella varchar(100))
RETURNS datetime
begin
DECLARE MinVal datetime;
select Min(date)
into MinVal
from Nometabella; **
/* **qui come si fa in altri linguaggi si dovrebbe forse indicare $Nometabella o &Nometabella ma nel primo se lo prende ma genera errore ' non esiste una tabella che si chiama $NomeTabella ' nel secondo caso genera solamente errore
*/
RETURN MinVal;
end$$
DELIMITER ;
Quindi come si indica il valore ?? se fosse stato un valore da inserire o da selezionare non so perchè ma se lo prende tranquillamente ma quando la variabile viene utilizzata al posto del nome della tabella non riconosce il valore...
Edited 2 time(s). Last edit at 05/04/2010 03:50AM by Fabrizio Marazita.