c# 选中dataGridView中的一行将其删除

c#.net中选中dataGridView中的一行,点击button后,直接删除,并且连同数据表的内容也删除怎么弄?在网上看的一些答案中,都乱七八糟的,都看不懂!像增加的... c#.net中 选中dataGridView中的一行,点击button后,直接删除,并且连同数据表的内容也删除怎么弄?

在网上看的一些答案中,都乱七八糟的,都看不懂!
像增加的话,我可以用以下代码实行,但如果是删除我就不会了,所以请大虾教我下删除
string ora = "data source=orcl;user id=fyp5811;pwd=fyp5811";
OracleConnection oraconn = new OracleConnection(ora);
oraconn.Open();
OracleCommand oracomm = new OracleCommand("insert into bujiaoxuefeist values ('" + textBox1.Text + "','" + textBox2.Text + "','" + textBox3.Text + "')", oraconn);
oracomm.ExecuteNonQuery();
oraconn.Close();
this.bujiaoxuefeiTableAdapter.Fill(this.dataSet5.bujiaoxuefei);

哪位大虾能清楚的说一下,先谢谢了!
回一楼,我要做的是第二种!,如果只有dataGridView和button,当按button时,请问怎么获取主键?具体该怎么写,可以试着举下例吗?
展开
 我来答
蟹蟹的影子
推荐于2017-11-27 · TA获得超过658个赞
知道小有建树答主
回答量:541
采纳率:0%
帮助的人:377万
展开全部
删除有两种情况:
1.你只是手工删除dataGridView选中行,数据库里的这行数据并没有改变,代码这样写:

if (this.dgvXFLB.SelectedRows.Count > 0)
{
DataRowView drv = dgvXFLB.SelectedRows[0].DataBoundItem as DataRowView;
drv.Delete();
}
判断是否有被选中的行,然后将该行删除,注意,只是dataGridView里移除该行了,数据库里没有发生任何改变。(dgvXFLB是dataGridView,你可以改成自己的)

2.数据库里删除该行数据:
首先你得知道这条数据的主键,它是唯一的,根据主键删除相应内容。
在这里,绑定数据我就不说了。
直接说使用Sql语句删除——

OracleCommand oracomm = new OracleCommand("delete from 表名 where ID="+主键值+"", oraconn);
oracomm.ExecuteNonQuery();

看能否对你有帮助,不明白的还可以问我。

回LZ:

既然你要做第二种,那么你的dataGridView里应该有一列是主键,选中某行时获取这行的主键就可以了。

这样获取:

OracleCommand oracomm = new OracleCommand("delete from 表名 where ID="+this.dataGridView.CurrentRow.Cells["主键列名"].Value+"", oraconn);
oracomm.ExecuteNonQuery();
wf00117299
2009-02-09
知道答主
回答量:30
采纳率:0%
帮助的人:15.8万
展开全部
最要不要直接在dataGridView的方法或属性改动。dataGridView还是属于容器不太适合直接改动。直接数据源改动吧。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式