SqlBulkCopy的问题
问题描述:
我使用SqlBulkCopy的从OleDbDataReader插入数据(包含XLS数据)MSSQL 2005 我有一个包含存储为文本数OleDbDataReader一个cloumn(在XLS)SqlBulkCopy的问题
当我看着我在该列中看到的mssql数据为空,所有其他列都移动正常。
答
,你需要像代码映射列...
using (SqlBulkCopy bulkCopy = new SqlBulkCopy(destConnection))
{
bulkCopy.ColumnMappings.Add("ID", "ID");
bulkCopy.ColumnMappings.Add("Email", "Email");
bulkCopy.DestinationTableName = "tableName";
bulkCopy.WriteToServer(ExcelReader);
}
答
当从SQL服务器到SQL Server一个大容量复制,源能够指示非常出色的数据类型到达目的地。使用Excel,源代码可以猜测数据类型。您可能将Excel格式化为文本,但源(ODBC?)可能会查看前50行,并猜测它是数字数据类型。即使列名匹配,如果数据类型不同,我怀疑该列不会被填充。