Salve ho scritto la seguente SP
Il campo idEsito della Tabella MKT_MOTIVI_ESITI è di tipo smallint. Se al parametro @esiti assegno un unico valore (ad esempio 2) SQL Server 2005 me lo casta implicitamente a smallint.
Però io ho la reale esigenza di assegnare al parametro @esiti un insieme di valori (val1, val2, val3, valN) e quando ciò accade, mi genera un errore di casting da nvarchar a smallint.
Come posso fare ?
Grazie
Sk
Ho trovato una soluzione che sembra funzionare.
Ho modificato il tipo dati del parametro esiti da nvarchar(100) in xml.
Quindi assegno al parametro un semplice documento xml strutturato come segue:
<esiti>
<esito id="val1" />
<esito id="valN" />
</esiti>
Poi nella seconda query della SP, dopo l'operatore IN ho sostituito il nome del parametro con una istruzione SELECT che trasforma il flusso XML in dati tabellari.
Non so se sia una soluzione ottimizzata, però funziona. Se qualcuno ha dei suggerimenti sono comunque graditissimi e ben accetti.
Grazie a tutti. Ciao