Excel文件是从别的系统里导出来的,通过存储过程导入SQL。exec('insert into T_Certificate
(Name,Sex,IDCard,Certificate,S1,S1Time,S2,S2Time,S3,S3Time) select 姓名,性别,身份证,准考证号,科目1,考试时间1,科目2,考试时间2,科目3,考试时间3 from OPENROWSET(''MICROSOFT.JET.OLEDB.4.0'',''Excel 8.0;HDR=YES;DATABASE=' + @ExcelFileName +''','+ @ExcelTableName +')')导入时提示列“考试时间3”不存在。几经测试后发现把Excel文件打开后点一下保存按钮,不用做任何更改,就可以导入了。有人知道这是什么原因吗?
(Name,Sex,IDCard,Certificate,S1,S1Time,S2,S2Time,S3,S3Time) select 姓名,性别,身份证,准考证号,科目1,考试时间1,科目2,考试时间2,科目3,考试时间3 from OPENROWSET(''MICROSOFT.JET.OLEDB.4.0'',''Excel 8.0;HDR=YES;DATABASE=' + @ExcelFileName +''','+ @ExcelTableName +')')导入时提示列“考试时间3”不存在。几经测试后发现把Excel文件打开后点一下保存按钮,不用做任何更改,就可以导入了。有人知道这是什么原因吗?
楼主,你说是“Excel文件是从别的系统里导出来的”,看看前者系统保存上面是不是出了问题。
在导入导出向导做列映射的时候,发现Excel表格中没有最后那一列“考试时间3”,重新保存之后的文件里就有那一列了,看来是原文件的格式有问题。导出的那个系统不是我做的,就不知道为什么会产生这样的问题了。