एक अन्य विकल्प संग्रहीत प्रक्रिया के लिए वापसी मूल्य के रूप में होगा (हालांकि मैं इसका सुझाव नहीं देता, क्योंकि यह आमतौर पर त्रुटि मानों के लिए सबसे अच्छा है)।
मैंने इसे दोनों के रूप में शामिल किया है जब यह उन मामलों में एक पंक्ति सम्मिलित कर रहा है जहां संग्रहीत प्रक्रिया को अन्य SQL प्रक्रियाओं और फ्रंट-एंड दोनों द्वारा उपभोग किया जा रहा था जो आउटपुट पैरामीटर (आईबीएटीआईएस में .NET मुझे विश्वास है) के साथ काम नहीं कर सका:पी>
CREATE PROCEDURE My_Insert
@col1 VARCHAR(20),
@new_identity INT OUTPUT
AS
BEGIN
SET NOCOUNT ON
INSERT INTO My_Table (col1)
VALUES (@col1)
SELECT @new_identity = SCOPE_IDENTITY()
SELECT @new_identity AS id
RETURN
END
अन्य संग्रहीत प्रक्रियाओं IMO से कॉल करते समय T-SQL में आउटपुट पैरामीटर के साथ काम करना आसान होता है, लेकिन कुछ प्रोग्रामिंग भाषाओं में आउटपुट पैरामीटर के लिए खराब या कोई समर्थन नहीं होता है और परिणाम सेट के साथ बेहतर काम करते हैं।