问题描述:我用的是VS2008,我在窗体上添加了datagridview控件,用于显示数据表的信息,数据库的连接已成功,并且查询,修改已成功实现! 但是我在delete信息时出现问题[/color[color=#FF0000]](datagridview上的信息可以删除,但是数据库中数据表的信息却无法删除)代码如下:
int row = dataGridView1.CurrentRow.Index;
string stt = ds.Tables[0].Rows[row]["图书编号"].ToString();
ds.Tables[0].Rows[row].Delete(); command.CommandText = "delete from 图书表 where 图书编号='stt' "; //command 是 SQLCOMMAND 对象。
adapter.SelectCommand = command; //adapter 是 SqlDataAdapter 对象
ds.AcceptChanges(); // ds是 dataset对象
adapter.Fill(ds) ;
adapter.Update(ds);
不知道问题出现在哪里请各位高手帮帮忙,急用,谢谢!!!(代码参考了工具书)
int row = dataGridView1.CurrentRow.Index;
string stt = ds.Tables[0].Rows[row]["图书编号"].ToString();
ds.Tables[0].Rows[row].Delete(); command.CommandText = "delete from 图书表 where 图书编号='stt' "; //command 是 SQLCOMMAND 对象。
adapter.SelectCommand = command; //adapter 是 SqlDataAdapter 对象
ds.AcceptChanges(); // ds是 dataset对象
adapter.Fill(ds) ;
adapter.Update(ds);
不知道问题出现在哪里请各位高手帮帮忙,急用,谢谢!!!(代码参考了工具书)
解决方案 »
- 求解 DateTime.Now.AddDays()函数
- 诚恳各位侠客们帮忙 由于工作需要急用到水晶报表,大家多多帮助啊
- 水晶报表 C#代码谁会?
- VS2005中,如何播放默认资源文件中添加的声音文件(.wav)?查了一天google后没有成功:(
- c# 程序 老是死掉!!!!
- 如何将Table中指点定的一Columns列的值赋值成指定的字符串
- 新手求助sql05中的某列导出到checklistbox
- 请教算法:c#语言
- C# ------------------> vb.net
- 如何控制在DataGrid控件中从第几条记录开始显示,我的数据库是SQL SERVER
- HttpWebRequest的问题
- 验证码识别方案
SqlDataAdapter sda;
private void btn1_Click(object sender, EventArgs e)
{
ds.Tables.Clear();
sda = new SqlDataAdapter("select * from Tb", conn);
sda.Fill(ds);
this.dataGridView1.DataSource = ds.Tables[0];
} private void btn2_Click(object sender, EventArgs e)
{
SqlCommandBuilder scb = new SqlCommandBuilder(sda);
sda.Update(ds);
this.dataGridView1.DataSource = ds.Tables[0];
}
改成
command.CommandText = "delete from 图书表 where 图书编号='"+stt+"'"; //command 是 SQLCOMMAND 对象。
adapter.Fill(ds) ;
adapter.Update(ds); --------------
哪本书参考来的?这3句真是无厘头ds是之前Fill得到的吧,Fill之后再一次Fill不就把Delete的RowState给抹掉了吗?
改为如下:
adapter.Fill(ds) ;adapter.Update(ds);
ds.AcceptChanges(); AcceptChanges应该在Update之后,这句的作用表示ds的数据更新DB完毕。