关于数据更新问题,请高手指点!

hlm2czy1314 2008-05-12 10:45:24
把dateset.Tables[0]中的多条记录更新到数据库的table2数据表中,
若table2中已有该数据,执行update,若没有则执行insert
...全文
89 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
hlm2czy1314 2008-05-13
  • 打赏
  • 举报
回复
我查下,谢谢啦
hlm2czy1314 2008-05-13
  • 打赏
  • 举报
回复
我照你说的写了一些代码,帮我看下谢谢!


Dim i As Integer
For i = 0 To ds.Tables("采购单细明").Rows.Count Step 1
SearchSQL = "updata 库存 set 库存.数量 += 采购单明细.数量 where 库存.产品ID = 采购单明细.产品ID and 库存.品牌 = 采购单明细.品牌"
ExecuteSQL(SearchSQL, " 库存")


n=返回影响条数 ------这句的代码要怎么写啊?


If n = 0 Then

SearchSQL = "insert into 库存(产品ID,品牌,数量) values( 采购单明细.产品ID,采购单明细.品牌,采购单明细.数量) "
ExecuteSQL(SearchSQL, " 采购单细明")
End If
Next i
steven_srl 2008-05-13
  • 打赏
  • 举报
回复
dataset里有关datatable的row好像有个状态属性值的,表示数据是被添加,修改,删除的,然后根据状态同数据库update()下就好了,具体忘记了,自己查MSDN
hlm2czy1314 2008-05-13
  • 打赏
  • 举报
回复
方法很不错,谢谢了!但是我刚学vb。net,还是不知道要怎么写里面的代码。
懒牛科技 2008-05-12
  • 打赏
  • 举报
回复
提供个思路,代码就不写了
不知道好不好用


for (int i=0;i<ds.table[0].rows.count;i++)
{
//第一步,连接sql语句,先执行Update,
//看返回影响的条数N
if(!N)//如果返回1,则证明已经更新,如果不是1,说明数据库中不存在
{
//执行insert
}
}

16,717

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧