我看了代码,只感觉一个地方有问题com.ExecuteNonQuery();后面少了关闭conn.Close();还有一种可能就是sql = "delete from rkb where id='" + GridView1.DataKeys[i].Value + "'";这行代码的GridView1.DataKeys[i].Value,没有值。这个你需要调试。
调试下看是否执行成功。