2012-02-14 13 views
11

का उपयोग कर डेटा तालिका सम्मिलित नहीं कर सकता है यह निम्नलिखित कॉलम और डीबी में मेरा कोड है, वे कॉलम nvarchars हैं।sqlbulkcopy

SqlBulkCopy bulkCopy = new SqlBulkCopy(connection, 
System.Data.SqlClient.SqlBulkCopyOptions.Default, transaction); 

bulkCopy.DestinationTableName = "Test"; 
bulkCopy.ColumnMappings.Add("Number", "Code"); 
bulkCopy.ColumnMappings.Add("Type", "Type"); 
bulkCopy.ColumnMappings.Add("Group", "Group"); 
bulkCopy.ColumnMappings.Add("Short Text", "ShortText"); 
bulkCopy.ColumnMappings.Add("Text", "Description"); 
bulkCopy.WriteToServer(dataTable); 

मैं थोक प्रति का उपयोग कर, एक DB में एक पूरे डेटा तालिका सम्मिलित करने के लिए कोशिश कर रहा हूँ, लेकिन मैं इस त्रुटि हो रही है:

The given value of type String from the data source cannot be converted to type nvarchar of the specified target column.

+0

आपको हमें कुछ टेबल संरचनाएं, कोड और आगे दिखाने की आवश्यकता होगी - बस उस त्रुटि के साथ, हम संभवतः आपकी मदद नहीं कर सकते ..... - http://tinyurl.com/so-hints –

+0

देखें कृपया जांचें आप स्रोत डेटा। स्रोत में अमान्य डेटा हो सकता है। –

उत्तर

18

यह ही किसी बहुत कम स्तंभ की वजह से हो सकता है । यदि आपका शॉर्टटेक्स्ट कॉलम NVARCHAR (30) के रूप में परिभाषित किया गया है और आपके पास 40 वर्ण स्ट्रिंग है, तो आपको वह त्रुटि मिल सकती है। उदाहरण के लिए यहां देखें: http://forums.asp.net/p/1228890/2212376.aspx

+0

बिंगो! यही मेरी समस्या थी। अच्छी युक्ति, और त्रुटि संदेश का एक उदाहरण आपको 'पूरी कहानी' नहीं बता रहा है। – NateJ

+0

बहुत बढ़िया! मेरे जीवन को बचाया;) – Icarus

4

मेरे पास इस प्रश्न का एक और जवाब है, शायद यह किसी के लिए आसान हो सकता है। यदि आपके पास स्ट्रिंग है जिसमें " (उद्धरण चिह्न) है, तो आपको यह त्रुटि संदेश भी मिलता है। कम से कम मुझे यह त्रुटि संदेश मिला, और मैंने गलत पंक्ति की खोज की, और मुझे यह मिला। जैसे ही मैंने उद्धरण चिह्न हटा दिए, त्रुटि गायब हो गई।

+0

मैंने इस त्रुटि को हल करने के लिए घंटों बिताए और यह भी मेरे लिए अपराधी बन गया। मैंने अपने स्रोत डेटाबेस से सभी डेटा को एक्सेल स्प्रेडशीट में कॉपी किया है, खराब चरित्र के लिए शीट की खोज की है और एक उदाहरण मिला है। – Krondorian

+0

क्या इसे उद्धरण चिह्नों के साथ काम करने का कोई तरीका है, या किसी भी तरह आयात के बाद उन्हें वापस डालें? –

संबंधित मुद्दे