/ / Chiama la procedura SQLCLR da un'altra stored procedure e ottieni 2 valori restituiti? - sql-server, sql-server-2008, stored-procedures, sqlclr

Chiamare la procedura SQLCLR da un'altra stored procedure e ottenere 2 valori di ritorno? - sql-server, sql-server-2008, stored-procedures, sqlclr

Sto usando una stored procedure che chiama un'altra stored procedure SQLCLR. La procedura SQLCLR restituisce 2 valori.

Come ottenere 2 valori di ritorno dalla procedura SQLCLR alla stored procedure T-SQL?

So normalmente da C # ottenere il valore di ritorno usando il parametro di output. Ma confondere come ottenere e mantenere il valore di ritorno nella normale procedura memorizzata.

risposte:

3 per risposta № 1

Procedura SQLCLR:

public static void SendMailSP(out string Status, out string Message)
{
Status = "hi:";
Message = "Hello";
}

Procedura DB

CREATE PROCEDURE [dbo].udpTestOutParameter
{
DECLARE @Status varchar(100);
DECLARE @Message varchar(100);
EXECUTE dbo.SendMailSP @Status = @Status OUTPUT,@Message = @Message OUTPUT;
PRINT @Status
PRINT @Message
RETURN
}

Sto ottenendo il risultato corretto. Grazie per il post.


1 per risposta № 2

Potrebbe esserci una risposta più "corretta" di questa,ma un modo semplice è mettere i due valori in uno e separarli con un carattere come una virgola, un tab, un pipe, ecc. In questo modo si restituisce un valore e si può dividerlo dall'altro capo in 2 valori basati sul delimitatore.