string strConnection="Data Source=sjk;user id=jxke;Password=jxkh";
OracleConnection myConn=new OracleConnection(strConnection);string deleteCmd="delete from DD where ID= @ID";
OracleCommand myComm= new OracleCommand (deleteCmd,myConn);myComm.Parameters.Add(new OracleParameter("@ID",OracleType.VarChar,10));
myComm.Parameters["@ID"].Value =DataGrid1.DataKeys[(int)e.Item.ItemIndex];myConn.Open();
myComm.ExecuteNonQuery();myConn.Close();运行删除提示“索引超出范围,必须为非负值并小于集合大小”
请各位强人指教,哪里出错,应如何修改???
OracleConnection myConn=new OracleConnection(strConnection);string deleteCmd="delete from DD where ID= @ID";
OracleCommand myComm= new OracleCommand (deleteCmd,myConn);myComm.Parameters.Add(new OracleParameter("@ID",OracleType.VarChar,10));
myComm.Parameters["@ID"].Value =DataGrid1.DataKeys[(int)e.Item.ItemIndex];myConn.Open();
myComm.ExecuteNonQuery();myConn.Close();运行删除提示“索引超出范围,必须为非负值并小于集合大小”
请各位强人指教,哪里出错,应如何修改???
解决方案 »
- C# WinForm调整groupBox和dataGridView的尺寸问题
- 64位WIN7安装32位oracle以后,用C# 连接会报错,如何解决?
- 简单的问题
- 高手帮帮忙,就这么点分了。小问题。
- 用Adobe Acrobat 7.0 Browser Document控件显示PDF文档的问题(关键字搜索)
- 跪求高手帮忙解决!!
- 请教:项目采用三层架构开发,在做详细设计时要注意哪些问题,开发阶段如何分配程序员工作?
- 谁知道类似.NET IDE中工具箱一样的控件,请提供
- 如何实现备份。
- 如何接受邮件(带附件的)?
- C#读写EXCEL的小问题
- 如何用C#创建IIS服务。(比如用友的OA,装在没有IIS的XP上,OA的安装程序会创建个服务控制台)
myComm.Parameters["@ID"].Value =DataGrid1.DataKeys[(int)e.Item.ItemIndex];
改成
myComm.Parameters["@ID"].Value =DataGrid1.DataKeys[e.Item.ItemIndex].ToString();
试试
myComm.Parameters["@ID"].Value =DataGrid1.DataKeys[(int)e.Item.ItemIndex];
改为:
myComm.Parameters["@ID"].Value =DataGrid1.Items[4].Cells[0].Text;
前一个4是表示datagrid的列数(是从0开始的),后一个0表示ID所在的列数,这样指定后就不会出这样的错了!
这个程序你放哪儿了,
你跟踪一下你的e.item.itemindex值,看你取的对不对