从Excel文件导入数据到dataTable.DataTable返回空列
问题描述:
我想将excel导入到我的数据库。但是现在我在从excel文件导入数据时遇到了一个非常奇怪的问题。从Excel文件导入数据到dataTable.DataTable返回空列
下面是Excel中的画面拍摄文件
其实我是想品牌的列导入到我的database.I可以导入那些AW08到DataTable记录,但是当记录为时,数据表返回空列。另一方面品牌的格式为通用类型
这里是DataTable中
这里的屏幕照是我的编码
DataTable dtExcel = new DataTable();
OleDbConnection conn = new OleDbConnection(strConn);
// Initialize an OleDbDataAdapter object.
conn.Open();
OleDbCommand ocmd = new OleDbCommand("select * from [MenShoe $] ", conn);
// Initialize an OleDbDataAdapter object.
OleDbDataAdapter da = new OleDbDataAdapter("select * from [MenShoe $] ", conn);
// Fill the DataTable with data from the Excel spreadsheet.
da.Fill(dtExcel);
有谁之前面对这个问题?
答
也许您的问题与应用于BRAND列的格式类型有关。
看到AW08
看起来像一个字符串,2006
被视为一个数字。看看那个。
尝试修改Excel中整个列的格式以改为使用TEXT并再次测试导入。
你好,整列的格式是** general **。我试着擦除2006年并再次填写栏中的文本。然后,我将列更改为**文本**,现在它可以工作,它是一般类型的格式,不适用于2006年等数字?顺便说一下,如果没有手动更改记录,还有其他更好的解决方案吗?因为我可能会导入大量的数据 – user998405 2012-01-18 04:43:31
@ user998405:所以我期望改变格式的窍门。我建议你将列格式设置为TEXT(因为它可以容纳任何类型的数据并反映你给定的情况)。将此Excel电子表格保存为模板并将其传递给使用它的人员。 – 2012-01-18 04:52:10