OPENROWSET और OPENDATASOURCE दोनों का उपयोग केवल बाहरी डेटा तक पहुँचने के लिए किया जाना चाहिए, मान लें, त्वरित और गंदे समाधान, या जब एक स्थायी लिंक किए गए सर्वर को कॉन्फ़िगर करना संभव नहीं है। ये फ़ंक्शन लिंक किए गए सर्वर से उपलब्ध सभी कार्यक्षमता प्रदान नहीं करते हैं। OPENROWSET और OPENDATASOURCE के तर्क चर का समर्थन नहीं करते हैं। उन्हें स्ट्रिंग-शाब्दिक के रूप में निर्दिष्ट किया जाना है। यदि चर को इन कार्यों के तर्क के रूप में पारित करने की आवश्यकता है, तो इन चरों वाली एक क्वेरी स्ट्रिंग को गतिशील रूप से बनाया जा सकता है और EXEC कथन का उपयोग करके निष्पादित किया जा सकता है। (सिंटैक्स चेक नहीं) के समान
DECLARE @sqlCommand varchar(1000)
SET @sqlCommand = 'SELECT *
FROM OPENROWSET(''SQLNCLI'',''server=.\sqlexpress;Trusted_Connection=yes'',''SET NOCOUNT ON;SET FMTONLY OFF;EXEC [BSC_DB].dbo.SelectScorecardGraphData ''''' + cast(@param1 as varchar(10)) + ''''',''' + cast(@param2 as varchar(n)) ''')'
EXEC @sqlCommand
और इसी तरह...आशा है कि यह मदद करता है। सादर, स्टीफन