• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
wysky
博客园    首页    新随笔    联系   管理    订阅  订阅
批量删除记录不成功
这个是一个删除按钮事件,Repeater+CheckBox实现新闻系统里的新闻批量删除.
语法用的是delete from XX where id in ();
执行无错误  但是记录没删掉.
protected void bt_del_Click(object sender, EventArgs e)
        {
            string sID="";            
            string strConn = "Provider=Microsoft.Jet.OleDb.4.0;data source=" + Server.MapPath("db.mdb");
            OleDbConnection objConn = new OleDbConnection(strConn);            
       
            foreach (RepeaterItem item in rptList.Items)
            {
                CheckBox chkbox1 = (CheckBox)item.FindControl("ckBox_single");

                if (chkbox1.Checked == true)
                {                    
                    sID += ((HtmlInputHidden)item.FindControl("SelectedID")).Value + ',';   
                }               
            }            
            string strSql = "delete from guestbook where g_id in (@id)";
            OleDbCommand cmd = new OleDbCommand(strSql, objConn);
            cmd.Parameters.AddWithValue("@id", sID);
            objConn.Open();
            cmd.ExecuteNonQuery();
            objConn.Close();
        }

比如断点调试,sID中的值是(17,18,) 不成功.但是如果直接把(@id)换成(17,18,)就是成功的....
不明白的说  

posted on 2006-12-01 13:56  文's sky  阅读(431)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3