2016-04-07 5 views
18

मैं एसक्यूएल सर्वर 2016 में JSON कार्यों का उपयोग करना चाहते हैं, लेकिन जब मैं OPENJSON समारोह निष्पादित करने के लिए प्रयास करते हैं, मैं निम्नलिखित त्रुटि मिलती है:OPENJSON SQL सर्वर में काम नहीं करता है?

Msg 208, Level 16, State 1, Line 1
Invalid object name 'openjson'.

क्यों यह काम नहीं करता? मेरे पास SQL ​​सर्वर 2016 आरसी संस्करण है।

+1

आप पोस्ट कर सकते हैं सभी एसक्यूएल? –

+1

भी @@ संस्करण जानकारी का चयन करें – TheGameiswar

उत्तर

55

क्या आप डेटाबेस पर संगतता स्तर की जांच कर सकते हैं? OPENJSON अनुकूलता स्तर के तहत उपलब्ध है 130. आप निष्पादित करने के लिए कोशिश कर सकते हैं:,

ALTER DATABASE database_name SET COMPATIBILITY_LEVEL = 130 

इसके अलावा, अगर आप Azure एसक्यूएल डाटाबेस पर JSON का उपयोग कर रहे हैं, ध्यान दें कि नए डेटाबेस 120 अनुकूलता स्तर के तहत बनाई गई हैं ताकि आप इसे अगर बदलना चाहिए आप OPENJSON का उपयोग करना चाहते हैं। इसके अलावा, यदि आप इसे Azure SQL डेटाबेस में उपयोग कर रहे हैं, तो यह V12 सर्वर देखने के लिए @@ संस्करण का चयन करें। आप की तरह कुछ देखना चाहिए:

Microsoft SQL Azure (RTM) - 12.0.2000.8 Mar 25 2016 15:11:30 Copyright (c) Microsoft Corporation

आप कुछ कम संस्करण दिखाई दें (उदाहरण 11.xxx) आप शायद पुरानी वास्तुकला पर डेटाबेस है जहां JSON समर्थित नहीं है।

सादर,

जोवन

+0

धन्यवाद जोवन, यह संगतता स्तर के कारण था। यह 130 के साथ काम करता है। – Iva

+0

अब मेरी त्रुटि है "डेटाबेस संगतता स्तर के मान्य मान 90, 100, या 110 हैं"। –

+0

क्या आप Azure SQL डेटाबेस या कुछ SQL सर्वर संस्करण के बारे में बात कर रहे हैं? Azure SQL में सभी संगतता स्तर उपलब्ध होना चाहिए। –

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