जब मैं OPENROWSET
SQL Server 2000 के साथ एक क्वेरी चलाता हूं तो यह काम करता है।
लेकिन SQL Server 2008 में समान क्वेरी निम्न त्रुटि उत्पन्न करती है:
SQL सर्वर ने घटक 'Ad Hoc Distributed Queries' के STATEMENT 'OpenRowset / OpenDatasource' तक पहुंच को अवरुद्ध कर दिया क्योंकि यह घटक इस सर्वर के लिए सुरक्षा कॉन्फ़िगरेशन के भाग के रूप में बंद है। एक सिस्टम व्यवस्थापक sp_configure का उपयोग करके 'Ad Hoc Distributed Queries' के उपयोग को सक्षम कर सकता है
वैसे, आप चेतावनी को ध्यान में रखते हुए बेहतर होंगे और OPENROWSET के बजाय लिंक्ड सर्वर का उपयोग करने के लिए अपने SQL कोड को बदलें।
—
RBarryYoung
@RarryYoung यह वास्तव में एक "चेतावनी" नहीं है - यह सिर्फ एक सूचना है जो कह रही है कि यह सक्षम नहीं है। इसे सक्षम करने का खतरा क्या है?
—
कॉनराड
यदि दुर्भावनापूर्ण उपयोगकर्ता कहीं SQL को इंजेक्ट करने में सक्षम था, तो इस विकल्प को चालू करने से उन्हें अपने चयन की डेटा फ़ाइलों की जांच करने की अनुमति मिल सकती है। यदि आप इसे एक लिंक किए गए सर्वर के रूप में सेट करते हैं, तो केवल विशिष्ट फाइलें - लिंक्ड सर्वर - उजागर होते हैं (और आपके पास आपकी एकीकृत SQL सर्वर सुरक्षा है जिसका आप उपयोग कर सकते हैं, आदि)।
—
माइक एम।
लेकिन मैं अपने आंतरिक परीक्षण और डेटा माइग्रेशन के लिए इस विकल्प को पसंद करता हूं ... इसलिए इसे फिर से उपयोग करने के तरीके की तलाश कर रहा हूं :)
—
माइक एम