DBA: Chiamata a stored procedure e parametri di tipo non corretto
copia linkDescrizione del difetto
Se da una stored procedure si effettuava una chiamata ad un'altra stored procedure passando un parametro di tipo non corretto, il testo SQL generato per la stored procedure non era corretto. Il malfunzionamento si manifestava in questo caso:
procedura PROC(float p)
{
...
}
procedura PROC2()
{
int val = 15
PROC(val)
}
In questo caso, alla chiamata alla procedura PROC veniva passata una variabile di tipo intero. Instant Developer provava a convertirla automaticamente in una variabile di tipo float tramite la costruzione di un IDVariant. Tale operazione non deve essere eseguita nel caso di stored procedure.
Effetti del malfunzionamento
- Il testo SQL della stored procedure non era corretto e conteneva una chiamata al costruttore della classe IDVariant presente solo nel caso di procedure lato client (C#/Java).
Soluzioni
Era sufficiente convertire il valore del parametro in quello atteso dalla chiamata affinché non venisse convertito automaticamente.
Funzionalità interessate
La scrittura di stored procedure con Instant Developer.
Note
- Malfunzionamento relativo alla richiesta di assistenza 001316-2013.
Ultima modifica: 14/10/2013 / Validità: da 12.5.5400