黑马程序员技术交流社区

标题: excel表中的数据怎么用代码执行删除一行 [打印本页]

作者: 红鹰(Jake)    时间: 2013-12-8 14:05
标题: excel表中的数据怎么用代码执行删除一行
本帖最后由 红鹰(Jake) 于 2013-12-8 22:49 编辑

标准表达式中数据类型不匹配。
说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
  1. // 数据库连接,用的是相对路径
  2.         string excelPath = Server.MapPath("~/UserTable.xls");
  3.         string strCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + excelPath + ";Extended Properties='Excel 8.0;IMEX=2'";
  4.         System.Data.OleDb.OleDbConnection Conn = new System.Data.OleDb.OleDbConnection(strCon);
  5.         Conn.Open();

  6.         //对表进行操作的 SQL语句
  7.         string strUpdateSql = "delete from [Sheet1$] where [ID] =";
  8.         strUpdateSql += gridUser.Rows[e.RowIndex].Cells[0].Text;

  9.         OleDbCommand mycmd = new OleDbCommand();
  10.         mycmd.Connection = Conn;

  11.         mycmd.CommandText = strUpdateSql;

  12.         mycmd.ExecuteNonQuery();
复制代码
错误在这里: string strUpdateSql = "delete from [Sheet1$] where [ID] =";???怎么错了呢
其中gridUser.Rows[e.RowIndex].Cells[0].Text 的值是:2,在xls文件中的ID字段类型为数值型



作者: 茹化肖    时间: 2013-12-8 19:07
看到回帖有奖?我来抽奖。。。
作者: 红鹰(Jake)    时间: 2013-12-8 22:33
茹化肖 发表于 2013-12-8 19:07
看到回帖有奖?我来抽奖。。。

抽奖的感觉如何?有的奖励就是小点了。
作者: 祐掱緣    时间: 2013-12-12 21:55
将表格中的数据读取到内存中保存到table表,然后在删除table中的指定行,在将数据重新保存覆盖已有文件即可。

作者: lwx    时间: 2014-1-4 17:08
你的ID有赋值吗?
作者: 念~    时间: 2014-1-6 09:20
你可以先把单元格中的数据的类型给提取出来看看。
作者: ygzhong000    时间: 2014-4-7 22:51
顶一下!!!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2