/ / किसी अन्य संग्रहीत प्रक्रिया से SQLCLR प्रक्रिया को कॉल करें और 2 वापसी मान प्राप्त करें? - एसक्यूएल-सर्वर, एसक्यूएल-सर्वर -2008, संग्रहीत प्रक्रियाओं, एसक्लक्लर

किसी अन्य संग्रहीत प्रक्रिया से SQLCLR प्रक्रिया को कॉल करें और 2 वापसी मान प्राप्त करें? - एसक्यूएल-सर्वर, एसक्यूएल-सर्वर -2008, संग्रहीत प्रक्रियाओं, एसक्लक्लर

मैं एक संग्रहीत प्रक्रिया का उपयोग कर रहा हूं जो एक और SQLCLR संग्रहीत प्रक्रिया को कॉल करता है। एसक्यूएलसीएलआर प्रक्रिया 2 मान देता है।

एसक्यूएलसीएलआर प्रक्रिया से टी-एसक्यूएल संग्रहीत प्रक्रिया में 2 रिटर्न वैल्यू कैसे प्राप्त करें?

मैं सामान्य रूप से आउटपुट पैरामीटर का उपयोग कर वापसी मूल्य प्राप्त कर रहा हूं। लेकिन सामान्य संग्रहीत प्रक्रिया में वापसी मूल्य को कैसे प्राप्त और पकड़ना भ्रमित करना।

उत्तर:

जवाब के लिए 3 № 1

एसक्यूएलसीएलआर प्रक्रिया:

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
}

मुझे उचित परिणाम मिल रहा है। पोस्ट के लिए धन्यवाद।


उत्तर № 2 के लिए 1

इससे अधिक "सही" उत्तर हो सकता है,लेकिन एक आसान तरीका यह है कि केवल दो मानों को एक में रखें और उन्हें अल्पविराम, टैब, पाइप इत्यादि जैसे कुछ चरित्रों से अलग करें। इस तरह आप केवल एक मान वापस कर रहे हैं और आप इसे दूसरे छोर पर वापस विभाजित कर सकते हैं डेलीमीटर के आधार पर 2 मान।