Използвам съхранена процедура, която нарича друга SQLCLR съхранена процедура. Процедурата SQLCLR връща 2 стойности.
Как да получите 2 върнати стойности от процедурата SQLCLR в T-SQL съхранената процедура?
Знам, че обикновено от C # получава връщащата стойност, използвайки изходен параметър. Но обърквайки как да получавате и държите връщаната стойност в нормална запомнена процедура.
Отговори:
3 за отговор № 1SQLCLR Процедура:
public static void SendMailSP(out string Status, out string Message)
{
Status = "hi:";
Message = "Hello";
}
ПБ процедура
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
}
Получавам правилния резултат. Благодаря за публикацията.
1 за отговор № 2
Може да има по-точен отговор от този,но един лесен начин е просто да поставите двете стойности в една и да ги разделите с някакъв знак като запетая, табулатора, тръбата и т.н. Така, че вие просто връщате една стойност и можете да я разделите от другата страна обратно в 2 стойности въз основа на разделителя.