读书人

通过DataSet更新数据库的失败的有关问

发布时间: 2011-12-28 22:45:21 作者: rapoo

通过DataSet更新数据库的失败的问题,高分100
通过DataSet更新数据库,

我的原理是这样的, 一个用户控件(里面放了和数据库表对应的绑定列,)
一个DataGridView,两个同时共用一个数据集ds,

正常情况操作下修改,删除是没问题的,

但按如下步骤就会出错;

1.先修改一条记录中的某个值没空(修改前该字段值不为空),不是NULL,
2.点击保存数据,保存成功,
3.再点击删除该记录,错误就发生了.说影响了1条记录的0行

[解决办法]
没看明白
[解决办法]
路过~~
[解决办法]
贴代码吧
[解决办法]
没看明白
[解决办法]
关注,UP
[解决办法]
看懂了 但没想通哪里会出问题,关注...
[解决办法]
你去看看自动生成的DeleteCommand就知道了
我一般都是自己加一个delete的查询到table adapter
[解决办法]
做一下清空..
[解决办法]
看不懂
[解决办法]
3.再点击删除该记录,错误就发生了.说影响了1条记录的0行
====================================================
1,启动SQlprofilter追踪SQL指令的执行情况
2,BtnDElete_Click()
{
messagebox.show(dataset的当前行的某个字段的值,看看是否为null)
}

== 建议用SQL指令操作
sqlcommand deletecmd=new sqlcommand(deletestr,cnn)
cnn.open()
[解决办法]
保存在DataSet中,删除是在数据库表中执行,冲突了
[解决办法]
你删除的时候丢失了焦点吧
[解决办法]
3.再点击删除该记录,错误就发生了.说影响了1条记录的0行

答:
1,启动SQlprofilter追踪SQL指令的执行情况
2,BtnDElete_Click()
{
messagebox.show(dataset的当前行的某个字段的值,看看是否为null)
}

== 建议用SQL指令操作
sqlcommand deletecmd=new sqlcommand(deletestr,cnn)
cnn.open()

或者可能是:
保存在DataSet中,删除是在数据库表中执行,冲突了
[解决办法]
直接用sql写把,这样保险点,还能随时在sqlserver里查

读书人网 >C#

热点推荐