क्या एमडी एक्सेस के लिए ओडीबीसी CASE WHEN
क्लॉज का समर्थन करता है? क्या कोई अन्य डेटाबेस है जो CASE WHEN
खंड का समर्थन नहीं करता है? ओडीबीसी के साथ एमएस एक्सेस से कनेक्ट करते समय मैंने निम्नलिखित क्वेरी की कोशिश की लेकिन अपवाद प्राप्त किया।क्या ओएसबीसी के साथ कनेक्ट होने पर एमएस एक्सेस समर्थन "केस कब" खंड है?
SELECT (CASE WHEN (AGE > 10) THEN 1 ELSE 0 END) FROM demo
[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression '(CASE WHEN (AGE > 10) THEN 1 ELSE 0 END)'
मैं एक आम तरीका है जो डेटाबेस के अधिकांश के लिए काम करता है (गणना) नए 'बूलियन स्तंभ' एक तुलना अभिव्यक्ति के साथ उत्पन्न करने के लिए ODBC के साथ कनेक्ट करते समय खोजने की कोशिश। दरअसल, एमएस एक्सेस SELECT क्लॉज में तुलना का समर्थन करता है, लेकिन कुछ अन्य डेटाबेस के लिए सीएएसई क्लॉज की आवश्यकता होती है। एमएस एक्सेस के लिए, एसक्यूएल
SELECT AGE > 10 FROM demo
हो सकता है लेकिन अन्य लोगों में यह आप Access का उपयोग कर रहे हैं के बाद से क्वेरी की रचना करने
SELECT (CASE WHEN (AGE > 10) THEN 1 ELSE 0 END) FROM demo
मुझे याद है कि आपने 'केस' के बजाय एमएस एक्सेस में 'आईआईएफ' का उपयोग किया था (जो ओडीबीसी के लिए विशिष्ट नहीं है, केवल सामान्य एक्सेस चीज)। –
हां, लेकिन 'आईआईएफ' एमएस एक्सेस विशिष्ट है। मैं यह सुनिश्चित करना चाहता हूं कि एमएस एक्सेस के लिए ओडीबीसी समर्थन 'केस' है या नहीं। – Aaron
ओडीबीसी का उपयोग करके बयान भेजते समय आपको लक्ष्य डेटाबेस द्वारा समर्थित SQL का उपयोग करना होगा। एमएस एक्सेस केस स्टेटमेंट का समर्थन नहीं करता है, इसलिए एमएस एक्सेस के लिए ओडीबीसी कनेक्शन उन्हें "समर्थन" नहीं कर सकते हैं। –