2015-02-24 112 views
1

我試圖使用SqlBulkCopy上傳數據表到SQL Server中。ASP.NET VB SqlBulkCopy字符串或二進制數據將被截斷

我得到這個錯誤:

String or binary data would be truncated.

我使用

sqlBulkcopy.WriteToServer(dtCustom) 

SQL Server列定義爲nvarchar(50)

我改變了列nvarchar(150)和同樣的問題

此行正在導致問題進口:

Enter the Location of Inspection 

該生產線是32個字符

如果我「上」,那麼它的工作原理和進口刪除。

所以,這是怎麼回事定義爲nvarchar(50)和32個字符的數據進入它的SQL Server表列?

任何想法?

+0

是你的列在源和目的地相同的順序? – jmcilhinney 2015-02-24 22:00:27

+0

數據來自XML文件。列在相同的順序讀取。但接下來的XmlNode,這個後,是不是添加到表在所有。 將XML讀入數據表(dtCustom)。然後將數據表複製到SQL表中。 – jslist 2015-02-25 16:08:32

+0

我有類似的問題。當你說:「如果我刪除了」,那麼它就起作用並導入。「,這是什麼意思? – costa 2017-01-26 01:38:48

回答

1

列必須映射。即使數據表具有與SQL表相同的列名 - 在asp.net vb編碼中,您仍然需要執行列映射。

+0

添加映射也爲我修復了它。 – costa 2017-01-26 02:33:58

相關問題