PDA

View Full Version : Errore parametri sp_executesql


Elioz
19-01-2011, 09:35
Ciao a tutti,

Ho una semplice query in SQL server 2005:

declare @sql nvarchar(max);
declare @sqlParamsDef nvarchar(max);
declare @sqlParamsSet nvarchar(max);
declare @colore nvarchar(21);
declare @count int;
set @count = 1;

set @sql = 'select @coloreOUT = @Colore1Tub';
set @sqlParamsDef = '@Colore1Tub nvarchar(21), @coloreOUT nvarchar(21) output';
set @sqlParamsSet = '@Colore1Tub, @coloreOUT = @colore output';
exec sp_executesql @sql, @sqlParamsDef, @sqlParamsSet;

select @count, @colore;

La quale genera l'errore:
La query con parametri '(@Colore1Tub nvarchar(21), @coloreOUT nvarchar(21) output)select' prevede il parametro '@coloreOUT', che non č stato specificato.

Non capisco dove sta l'errore...
Ho notato che invertendo la dichiarazione dei parametri, inserendo prima @coloreOUT e poi @Colore1Tub, mi genera lo stesso errore riferito perņ al parametro @Colore1Tub.
Di conseguenza ne deduco che la procedura si ferma al primo parametro.

Qualche idea per risolvere il problema?

Grazie a tutti.