हालांकि डेटा एडॉप्टर को "भरने" के लिए डेटासेट की अनुमति है, मैंने आमतौर पर डेटाटेबल के साथ किया है जब क्वेरी करते समय, मैं केवल एक परिणाम सेट की अपेक्षा कर रहा हूं। ऐसा कहने के बाद, मैं टेबल को प्री-क्वेरी कर दूंगा, बस इसकी संरचना प्राप्त करने के लिए... कुछ इस तरह
select whatever from yourTable(s) where 1=2
जब आप
. करते हैं तो यह अपेक्षित परिणाम कॉलम प्राप्त करेगाDataTable myTable = new DataTable();
YourAdapter.Fill( myTable );
अब जब आपके पास एक स्थानीय तालिका है जो सामग्री आकार के लिए विफल नहीं होगी क्योंकि कोई रिकॉर्ड वापस नहीं किया जाएगा, अब आप स्पष्ट रूप से उस एक कॉलम पर जा सकते हैं और इसकी डेटा प्रकार / आकार की जानकारी को आवश्यकतानुसार सेट कर सकते हैं...
myTable.Columns["NameOfProblemColumn"].WhateverDataType/Precision = Whatever you need...
अब, आपका स्थानीय स्कीमा वैध है और समस्या कॉलम की पहचान इसकी सटीकता से की गई होगी। अब, अपनी उचित क्वेरी को उचित जहां क्लॉज के साथ डालें और वास्तव में डेटा वापस करने के लिए 1 =2 नहीं ... चूंकि पहले पास में कोई वास्तविक पंक्ति नहीं है, इसलिए आपको myTable.Clear()
पंक्तियों को साफ़ करने के लिए... बस क्वेरी को फिर से चलाएँ और dataAdapter.Fill()
।
मैंने वास्तव में कोशिश नहीं की है क्योंकि मेरे पास एक ही समस्या का अनुकरण करने के लिए आपके डेटा मुद्दे नहीं हैं, लेकिन सैद्धांतिक प्रक्रिया आपको सभी स्तंभों के माध्यम से स्पष्ट रूप से जाने के बिना मिलनी चाहिए ... केवल कुछ जो समस्या उत्पन्न कर सकते हैं।पी>