急急急!!!!紧急求助???数据库删除记录问题!!!!解决后立刻给分!! 要在itemcommand判断e.commandname="delete".protected void itemcommand(.............){ if(e.commandname="delete") { ............. }} 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 为什么要加Itemcommand呢?我是用DataGrid做的 晕,好多人问了,搜一下!lufly2000(凌绝顶) 说的对如果你不把代码放在DataGrid1_DeleteCommand 时,就这样做datagrid1的代码?? 错了。要设置DataGrid的DataKeyField属性。 我很菜,不好意思,请问一下protected void itemcommand(.............){ if(e.commandname="delete") { .............这里应该写些什么呢? }} 绑定数据库时注意:private void BindGrid() { string strCommand="select * from 车辆信息表"; SqlDataAdapter da=new SqlDataAdapter(strCommand,myConnection); DataSet ds=new DataSet(); da.Fill(ds,"车辆信息表"); DataGrid1.DataSource=ds.Tables["车辆信息表"].DefaultView;------------------------------------------------------------- DataGrid1.DataKeyField = "牌照号";------------------------------------------------------ DataGrid1.DataBind(); }再试试看 用DATASET一样可以达到效果的!! DataSet ds; objDb=new DB(); int RowNO=Convert.ToInt32(e.Item.ItemIndex); ds=objDb.GetDataSet("SELECT * FROM SYS_SetModel","SYS_Setmodel"); ds.Tables["SYS_SetModel"].Rows[RowNO].Delete(); if (objDb.UPDataSet(ds,"SYS_SetModel")) { Response.Write("<script>alert('删除成功')</script>"); } else { Response.Write("<script>alert('删除失败')</script>"); } DataGrid1.EditItemIndex=-1; Bind();objDb.UPDataSet(ds,"SYS_SetModel"))里是这样的!!! public bool UPDataSet(DataSet myds,string TableName) //把DATASET写回数据库中 { try { objBuilder=new SqlCommandBuilder(dbAdapter); dbAdapter.UpdateCommand=objBuilder.GetUpdateCommand(); dbAdapter.Update(myds,TableName); return true; } catch { objBuilder.Dispose(); return false; } } DataGrid1.DataKeyField = "牌照号";----------------------------我想问一下,我是在窗口设计器中的属性窗口中设置了DataKeyField 为牌照号,所以上面的程序中就没有以上的那句(DataGrid1.DataKeyField = "牌照号"),和这有关系吗?请各位高手指点 vs2008下如何创建三层结构项目 【请教一个服务器button的提交过程】 这样写有什么好处? asp.net 2.0中如何设置角色的描述 一个很简单问题,盼解决 为什么我的toolbar在win2003下有时会失效 为什么删除不掉数据库的记录呢 如何把WORD中的东西直接导入到HTML 调用分页存储问题 ASP.NET 如何给datagrid的删除按钮做删除确认? 有点难度,关于Request.Headers["Accept-Language"]和javascript全局变量总是在服务器按钮提交后执行.
lufly2000(凌绝顶) 说的对
如果你不把代码放在DataGrid1_DeleteCommand 时,就这样做
datagrid1的代码??
protected void itemcommand(.............)
{
if(e.commandname="delete")
{
.............这里应该写些什么呢?
}
}
{
string strCommand="select * from 车辆信息表";
SqlDataAdapter da=new SqlDataAdapter(strCommand,myConnection);
DataSet ds=new DataSet();
da.Fill(ds,"车辆信息表");
DataGrid1.DataSource=ds.Tables["车辆信息表"].DefaultView;
-------------------------------------------------------------
DataGrid1.DataKeyField = "牌照号";
------------------------------------------------------
DataGrid1.DataBind();
}再试试看
objDb=new DB();
int RowNO=Convert.ToInt32(e.Item.ItemIndex);
ds=objDb.GetDataSet("SELECT * FROM SYS_SetModel","SYS_Setmodel");
ds.Tables["SYS_SetModel"].Rows[RowNO].Delete();
if (objDb.UPDataSet(ds,"SYS_SetModel"))
{
Response.Write("<script>alert('删除成功')</script>");
}
else
{
Response.Write("<script>alert('删除失败')</script>");
}
DataGrid1.EditItemIndex=-1;
Bind();
objDb.UPDataSet(ds,"SYS_SetModel"))里是这样的!!!
public bool UPDataSet(DataSet myds,string TableName) //把DATASET写回数据库中
{
try
{
objBuilder=new SqlCommandBuilder(dbAdapter);
dbAdapter.UpdateCommand=objBuilder.GetUpdateCommand();
dbAdapter.Update(myds,TableName);
return true;
}
catch
{
objBuilder.Dispose();
return false;
}
}
----------------------------
我想问一下,我是在窗口设计器中的属性窗口中设置了DataKeyField 为牌照号,所以上面的程序中就没有以上的那句(DataGrid1.DataKeyField = "牌照号"),和这有关系吗?请各位高手指点