SQL सर्वर: अलग-अलग टेबल में संग्रहीत कार्यप्रणाली से मल्टी-टेबल आउटपुट डालना



sql-server tsql (1)

मेरे पास एक संग्रहित प्रक्रिया है जो कई तालिकाओं (वर्तमान में एक वेब सेवा द्वारा खपत) देता है। अब मुझे उस आउटपुट को एक SQL सर्वर डेटाबेस में सम्मिलित करना होगा

यदि मुझे मौजूदा परिभाषा के माध्यम से पता है तो मैं एक एकल तालिका सम्मिलित कर सकता हूँ I

INSERT INTO #temp
    EXEC ('myProcSQlhere')

लेकिन इसके लिए मुझे आउटपुट तालिका की परिभाषा अग्रिम में जानना चाहिए।

SELECT *
INTO #temp
FROM OPENQUERY(SERVERNAME, 'EXEC myProcSQlhere')

जो तालिका की परिभाषा को जानने के आसपास हो जाता है, लेकिन केवल एक तालिका में प्रवेश की अनुमति देता है। तो मैं एक से अधिक तालिकाओं में डेटा कैसे सम्मिलित करूं?

https://code.i-harness.com


एक संग्रहीत कार्यविधि केवल एक मान वापस कर सकती है। आपकी संग्रहीत कार्यविधि क्या कई चयन कर रही है और इसलिए कई परिणाम सेट दे रही है। यह सिस्टम के लिए काम करता है जो कई परिणाम सेट का उपभोग कर सकता है लेकिन आप एसक्यूएल-सर्वर में फंस रहे हैं

जांचें कि क्या संग्रहीत कार्य प्रत्येक परिणाम सेट के लिए पहले से ही स्वतंत्र संग्रहित प्रक्रियाओं को नहीं कॉल करता है और यदि ऐसा है, तो उन पर कॉल करें या संग्रहीत कार्यप्रणाली की परिभाषा का उपयोग करें और प्रत्येक क्वेरी को क्रमिक रूप से प्रयुक्त किए गए कॉल करें।

यदि आपके पास संग्रहीत कार्यप्रणाली प्रदान करने वाली प्रणाली तक कोई पहुंच नहीं है, तो आपको सीएलआर संग्रहित प्रक्रिया को लागू करने और परिणामों को अलग-अलग तालिकाओं में स्टोर करने के लिए प्रत्येक परिणाम सेट को लाने की आवश्यकता होगी।





stored-procedures