Italian community of Lazarus and Free Pascal
Programmazione => Databases => Topic aperto da: luigi67 - Febbraio 12, 2014, 03:50:32 pm
-
Salve a tutti
è da un paio di giorni che sbatto la testa su quest'errore senza venirne a capo. Senza dilungarmi in spiegazioni utilizzo un oggetto TSQLScript per utilizzare uno script che all'interno di un database già creato crei le varie tabelle, domini, viste etc. In pratica utilizzo Flamerobin per estrarre i metadata dopodiché lo salvo su un file che faccio caricare al TSQLScript. In pratica nella creazione delle procedure ma da un errore. Sono riuscito a riprodurlo e allego frammento di codice SQL
SET TERM ^ ;
ALTER PROCEDURE PFORMULATO (
IDPRODOTTO CHAR(5) )
RETURNS (
PFORMULATO CHAR(2) )
AS
DECLARE VARIABLE VFORMULATO CHAR(7);
BEGIN
SELECT FORMULATO
from PRODOTTI
WHERE ID_PRODOTTO=:IDPRODOTTO
INTO :VFORMULATO; <----errore
IF (VFORMULATO='LIQUIDO') THEN
BEGIN
PFORMULATO='ml';
end
else
BEGIN
PFORMULATO='gr';
end
SUSPEND;
END^
SET TERM ; ^
alla riga 11 colonna 6.
Se alla variabile preceduta da “:” tolgo i “:” non da errore, ma secondo voi è corretta?
Ciao
Luigi
-
i ":" mi sembra proprio che ci vadano, non so perché ti da errore
hai provato ad eseguire la stessa frase da flame robin?
se funziona li deve funzionare anche da lazarus
-
Allora dopo prove e riprove e vari googolate in pratica prima della parola "into" a quanto ho capito è opzionale, ma con TSQLScript i : gli fanno generare questo errore togliendoli funziona perfettamente.
Ciao
Luigi