क्या बीसीपी संस्करण 8.0 प्रारूप फ़ाइल में कॉलम नाम हो सकता है जो एक SQL कीवर्ड है?

मेरे पास एक प्रारूप फ़ाइल है जहां मैं कॉलम में से एक को "समूह" बनाना चाहता हूं। मैं प्रारूप फ़ाइल को स्वतः उत्पन्न कर रहा हूं और क्लाइंट "समूह" के साथ एक फ़ाइल को कॉलम में से एक के रूप में अपलोड करना चाहता है। मैं इसे प्रतिबंधित कर सकता हूं ताकि वे SQL कीवर्ड का उपयोग नहीं कर सकें, लेकिन फिर मुझे यह निर्धारित करने के लिए एक फ़ंक्शन चाहिए कि कॉलम नाम एक SQL कीवर्ड है या नहीं, इसलिए मैं उपयोगकर्ता को अपने ग्राहकों को नाम देने में सक्षम होने का समर्थन करना चाहता हूं। मैं सोच रहा हूं कि यह संभव है या नहीं। मैंने ब्रैकेट्स का उपयोग करने की कोशिश की, लेकिन यह काम नहीं कर सका। मेरी फ़ाइल इस तरह दिखती है:

8.0
1
1 SQLCHAR 0 0 "\r\n" 1  [group] SQL_Latin1_General_CP1_CI_AS
1

2 उत्तर

मैंने एसक्यूएल 2005 एसपी 2 (अनुकूलता मोड 80 और 9 0 दोनों में लक्षित डेटाबेस) पर कई अलग-अलग तरीकों का परीक्षण किया और यह बीसीपी के एसक्यूएल 2005 संस्करण का उपयोग करके मेरे लिए ठीक काम करता है।

हालांकि, मैंने इसे बीसीपी के एसक्यूएल 2000 संस्करण के साथ भी परीक्षण किया, और यह असफल रहा

Error = [Microsoft][ODBC SQL Server Driver][SQL Server]Incorrect syntax near the keyword 'group'.

जो मुझे लगता है वह आपको मिल रहा है।

क्या आप उस सिस्टम को अपग्रेड करने में सक्षम हैं जहां आप SQL 2005 क्लाइंट टूल्स का उपयोग करने के लिए बीसीपी चला रहे हैं?

अगर आपको लगता है कि आप पहले ही अपग्रेड कर चुके हैं, तो पुष्टि करने के लिए अपने पाथ पर्यावरण चर की जांच करें

C:\Program Files\Microsoft SQL Server\90\Tools\binn\

(आपकी स्थापना के लिए समायोजित) पहले प्रकट होता है

C:\Program Files\Microsoft SQL Server\80\Tools\BINN

अन्यथा SQL 2000 कमांड लाइन टूल्स का उपयोग SQL 2005 के वरीयता में किया जाएगा

1
जोड़ा

एमएस एसक्यूएल पर, यदि आप इसे उद्धरण में डालते हैं तो आप कॉलम नाम के रूप में SQL कुंजीवर्क का उपयोग कर सकते हैं।

Example: SELECT id, "group" FROM myTable

0
जोड़ा