我正在使用以下代码将Excel文件更新到SQL Server中。代码正在工作,但无法将第一行插入表中。
OleDbConnection OleDb = new OleDbConnection(ConnectionString);
OleDbCommand OleDbCmm = new OleDbCommand(Query,OleDb);
OleDbDataReader OleDbdr;
OleDb.Open();
if (OleDb.State == ConnectionState.Open)
{
OleDbdr = OleDbCmm.ExecuteReader();
SqlBulkCopy BulkCopy = new SqlBulkCopy(ConfigurationManager.ConnectionStrings["connstring"].ToString());
BulkCopy.DestinationTableName = "TempTable";
if (OleDbdr.Read())
{
BulkCopy.WriteToServer(OleDbdr);
}
}
OleDb.Close();
最佳答案
即使是我也面临着同样的问题,这是因为我正在使用下面这样的Read()
方法。
while (dr.Read()) {
bulkcopy.WriteToServer(dr);
}
解决上述问题的方法是remove
dr.Read()
方法和while循环使用
bulkcopy.WriteToServer(dr)
无任何条件和
Read()
方法。