शुद्ध अनुमान:
- फ़ाइल है
utf-8
एन्कोडेड (या कोई अन्य एन्कोडिंग, SQL-Server 2008 मूल रूप से नहीं पढ़ सकता)।- आपको पता होना चाहिए कि SQL-सर्वर फ़ाइल एन्कोडिंग के साथ सीमित है।
CHAR
(याVARCHAR
)extended ASCII 1-byte encoding
. है औरNCHAR
(याNVARCHAR
)UCS-2 2-byte encoding
. है (जो लगभगUTF-16
. के समान है )। - एसक्यूएल-सर्वर 2016 (और v2014 के लिए एसपी2) के साथ कुछ और समर्थन पेश किया गया, विशेष रूप से
utf-8
के लिए । - अपने XML को एक उपयुक्त संपादक (जैसे नोटपैड++) के साथ खोलने का प्रयास करें और फ़ाइल की एन्कोडिंग का पता लगाने का प्रयास करें। इसे "यूनिकोड / UCS-2 / utf-16" के रूप में सहेजने का प्रयास करें और आयात करने का पुनः प्रयास करें।
CLOB
के साथ अपने आयात का उपयोग करने का प्रयास करेंBLOB
. के बजाय . फ़ाइल को बाइनरी . के रूप में पढ़ना लार्जऑब्जेक्ट एक के बाद एक बाइट्स लेगा। SQL-सर्वर इन बाइट्स को प्रति वर्ण निश्चित आकार के साथ स्ट्रिंग के रूप में पढ़ने का प्रयास करेगा। एक चरित्र LOB विशेष परिस्थितियों में काम कर सकता है।- एक
BOM
के लिए पहले दो बाइट्स की जांच करें (बाइट ऑर्डर मार्क)
- आपको पता होना चाहिए कि SQL-सर्वर फ़ाइल एन्कोडिंग के साथ सीमित है।
- कुछ गंदगी है आपके एक्सएमएल के भीतर
- HEX-संपादक के साथ फ़ाइल खोलें और अजीब कोड खोजने का प्रयास करें
- आपका कोड फ़ाइल की सामग्री को गतिशील रूप से बनाए गए कथन में संसाधित करता है।
- ऐसे मामलों में कभी-कभी आप काट-छांट या स्ट्रिंग-ब्रेकिंग उद्धरणों में भाग लेते हैं
- सामान्य संकेत:
- यदि आप डेटा आयात करते हैं और आप समस्याओं की अपेक्षा करते हैं तो 2-चरणीय दृष्टिकोण का उपयोग करने की अत्यधिक अनुशंसा की जाती है
- अपनी फ़ाइल को सहिष्णु स्टेजिंग टेबल में पढ़ें (
NVARCHAR(MAX)
. के साथ) या यहां तक किVARBIANRY(MAX)
लक्ष्य कॉलम) और इसे जारी रखने का प्रयास करें। - आयात से पहले आपकी फ़ाइल को बदलने के लिए किसी अन्य टूल का उपयोग करना आवश्यक हो सकता है।