2009-07-26 31 views
7

मेरे पास एक सम्मिलित संग्रहित प्रक्रिया है जो कई पैरामीटर लेती है - उनमें से 2 @ फर्स्टनाम, @LastName हैं। मेरे पास एक अद्यतन संग्रहीत प्रक्रिया भी है जो कई पैरामीटर लेती है - उनमें से 2 @ फर्स्टनाम, @LastName हैं।किसी संग्रहीत प्रक्रिया से संग्रहीत प्रक्रिया को कैसे कॉल करें?

मैं क्या करना चाहता हूं, सम्मिलित एसपी के अंदर से, जब यह किया जाता है, अद्यतन एसपी को कॉल करें और इसे @ फर्स्टनाम, @LastName पर भेजें।

मुझे ऐसा करने के लिए सही वाक्यविन्यास नहीं पता है; मैंने कोशिश की:

exec LandData_Update @FirstName, @LastName 

लेकिन मुझे लगता है कि यह गलत है।

क्या कोई मुझे बता सकता है कि इस कॉलिंग को कैसे लिखना है?

और यदि मैं अलग-अलग पैरा नामों के साथ अद्यतन स्प को कॉल करूंगा? जैसे @ MyFirstName, @MyLastName? क्या मैं इसे इस तरह लिखूंगा: EXECUTE LandData_Update @[email protected], @[email protected]?

उत्तर

12

आपको क्या लगता है कि यह गलत है?

CREATE PROCEDURE MyInsertSP 
    @FirstName varchar(255), 
    @LastName varchar(255) 
AS 
BEGIN 
    INSERT INTO Table VALUES('Some Value') 

    EXECUTE LandData_Update @FirstName, @LastName 
END 

क्या आपको कोई त्रुटि या कुछ मिलता है?

संपादित करें: इससे कोई फर्क नहीं पड़ता कि चर के नाम हैं, लेकिन क्या आप आप दो नए चर घोषणा कर सकते हैं करना चाहते हैं।

DECLARE @MyFirstName varchar(255) 
DECLARE @MyLastName varchar(255) 

SET @MyFirstName = @FirstName 
SET @MyLastName = @LastName 

और फिर नए चर का उपयोग करें। लेकिन फिर, स्टोर प्रक्रिया परवाह नहीं है कि चर क्या कहा जाता है।

+0

और यदि मैं अलग-अलग पैरा नामों के साथ अद्यतन स्प को कॉल करूंगा? जैसे @ MyFirstName, @MyLastName? इसे इस तरह लिखेंगे: EXDUTE LandData_Update @ MyFirstName = @ FirstName, @ MyLastName = @ LastName ?? –

+0

हां, यह ठीक काम करना चाहिए http://msdn.microsoft.com/en-us/library/ms188332(SQL.90).aspx – ZippyV

संबंधित मुद्दे