क्या "स्ट्रिंग या बाइनरी डेटा को काट दिया जाएगा" का कारण देखने के लिए एक कुशल तरीका है?


13

यह इस सवाल पर एक अनुवर्ती है । यह Microsoft के इस सुविधा अनुरोध से भी संबंधित है ।

हालांकि, कई साल बीत चुके हैं और कई प्रमुख रिलीज बाजार में पहुंच गई हैं क्योंकि यह रिपोर्ट की गई थी।

प्रश्न: क्या SQL सर्वर 2017 इस त्रुटि के मूल कारण का पता लगाने में आसानी के लिए कोई तंत्र प्रदान करता है? या यह जांच करना उतना ही कठिन है जितना कि 9 साल पहले जब इस मुद्दे की रिपोर्ट की गई थी?


मैं इस एकल त्रुटि को डीबग करने पर सप्ताह में कम से कम 4 घंटे खर्च करता हूं और SQL मेरे नौकरी-विवरण में भी नहीं है।
टॉनी

जवाबों:


20

कोई बदलाव नहीं हुआ है। SQL सर्वर 2017 अभी भी एक ही अस्पष्ट त्रुटि संदेश प्रदान करता है और आपत्तिजनक पंक्ति / स्तंभ को खोजने के लिए कोई तंत्र प्रदान नहीं करता है।

कनेक्ट कनेक्ट होने पर इस कनेक्ट आइटम में 1,600 से अधिक वोट थे:

Microsoft की नवीनतम टिप्पणी, यह थी:

नवीनतम अपडेट - इस पर काम करने वाला डेवलपर एक पूर्ण फिक्स बनाने में शामिल चुनौतियों को समझता है। यह इस तरह से वास्तविक रूपांतरण समारोह के लिए एक पूर्ण त्रुटि संदेश उत्पन्न करने के लिए आवश्यक स्तंभों के बारे में जानकारी गिराने के लिए मुश्किल हो सकता है जो प्रदर्शन या अद्यतन को प्रभावित नहीं करेगा। हम अल्पावधि में कुछ सस्ता लागू कर सकते हैं जैसे कि डेटा के प्रकार और लंबाई को छोटा किया जा रहा है। यह जानना अभी भी जल्दबाजी होगी कि इस तरह का फिक्स सार्वजनिक रूप से दिखाई देने वाली रिलीज तक कैसे पहुंचेगा।

सबसे अच्छा मैं सुझाव दे सकता हूं कि आप उस आइटम के लिए मतदान करें (और उस पर टिप्पणी करें, यह आपके लिए व्यापार मूल्य का वर्णन करेगा)।


+1। अपराधी का पता लगाने के लिए कम अक्षम तरीकों में से एक को जोड़ने के लिए (यदि आपके पास ऐप लॉग नहीं है) प्रोफाइलर और फ़िल्टर का उपयोग करना है (मेजबान / उपयोगकर्ता / ऐप / क्वेरी / आदि द्वारा)। इसके अलावा यह उपयोगी हो सकता है: nimblegecko.com/…
जीन

3

हमारी प्रार्थनाओं का उत्तर इस MDSN ब्लॉग पोस्ट द्वारा दिया गया है :

SQL सर्वर 2019 अतिरिक्त संदर्भ जानकारी के साथ एक नया संदेश प्रस्तुत करता है।

त्रुटि अब और अधिक सार्थक होनी चाहिए:

Msg 2628, Level 16, State 1, Line 14 String या Binary Data को 'DbName.SchemaName.TableName', कॉलम 'Col' तालिका में छोटा किया जाएगा। काट दिया गया मान: '...'।

इसके अलावा, अच्छी खबर यह है कि यह बदलाव 2017 और 2016 दोनों में वापस आ जाएगा।

यह नया संदेश SQL Server 2017 CU12 (और एक आगामी SQL सर्वर 2016 SP2 CU) में भी वापस आ गया है, लेकिन डिफ़ॉल्ट रूप से नहीं। आपको संदेश ID 8152 को 2628 के साथ सत्र या सर्वर स्तर पर बदलने के लिए ट्रेस ध्वज 460 को सक्षम करने की आवश्यकता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.