private void button1_Click(object sender, EventArgs e)
{
myTable.Rows[dataGridView1.CurrentRow.Index].Delete();
if (MessageBox.Show("确实要删除这条记录吗?", "询问", MessageBoxButtons.YesNo) == DialogResult.Yes)
{
try
{
//// myAda.Update(myTable.GetChanges());///
MessageBox.Show("数据删除成功!", "信息");
}
catch (SqlException ex)
{
MessageBox.Show(ex.ToString()); }
}
else
{
myTable.RejectChanges();
}
上面///引上的位置是出现错误的位置,当我用select*from表名 作为查询时候可以删除记录.当我用select time as '发送时间'from 表名时.不全部查询时就会出现错误.请指教
{
myTable.Rows[dataGridView1.CurrentRow.Index].Delete();
if (MessageBox.Show("确实要删除这条记录吗?", "询问", MessageBoxButtons.YesNo) == DialogResult.Yes)
{
try
{
//// myAda.Update(myTable.GetChanges());///
MessageBox.Show("数据删除成功!", "信息");
}
catch (SqlException ex)
{
MessageBox.Show(ex.ToString()); }
}
else
{
myTable.RejectChanges();
}
上面///引上的位置是出现错误的位置,当我用select*from表名 作为查询时候可以删除记录.当我用select time as '发送时间'from 表名时.不全部查询时就会出现错误.请指教
myTable.Rows[dataGridView1.CurrentRow.Index].Delete();好像有些问题,有时候dataGridView1.CurrentRow.Index并不是你要删除的那一行的Index,
如果你的myTable包含主键的话,可以用用Find方法找到需要删除的行。
BindingSource1.RemoveAt(i);
TableAdapter1.Update(DataSet.datatable);
你查出来的记录中的列集合中 是否有主键列?
如果没有.NET自动生成的代码删除不掉你指定行,
因为他根本就不知道删除哪一行,没有主键,如何判断