当前位置:编程学习 > VB >>

sql 和ACCESS数据库查询中有那些不同

sql  和ACCESS数据库查询中有那些不同以下代码在ACCESS中正常在sql 运行不正确 
 Dim rs1 As New ADODB.Recordset
             rs1.Open "select * from 原料合格品档案 where 炉号='" & Trim(Text1.Text) & "'and  垛位 ='" + Combo3.Text + "' ", cnn, adOpenKeyset, adLockOptimistic
             If rs1.RecordCount > 0 Then
             Dim snum As Integer
             snum = Val(rs1.Fields("根数")) + Val(Trim(Text4.Text))
             rs1.Update
             rs1.Fields("根数") = snum
             rs1.Update

Dim rs1 As New ADODB.Recordset
  rs1.Open "select * from 原料合格品档案 where 炉号='" & Trim(Text1.Text) & "'and 垛位 ='" + Combo3.Text + "' ", cnn, adOpenKeyset, adLockOptimistic
  If rs1.RecordCount > 0 Then
  Dim snum As Integer
  snum = Val(rs1.Fields("根数")) + Val(Trim(Text4.Text))
  'rs1.Update
  rs1.Fields("根数") = snum
  rs1.Update
请问这有什么不同
引用 2 楼 wushuiyouyou 的回复:
请问这有什么不同

前面没有赋值操作,你更新它作什么?另你这样更新后记录指针可能已经变动。 哦,还有rs1.RecordCount 为什么总是-1 ,可是我的数据表中有数具 执行到 rs1.Fields("根数") = snum时,错误提示当前不支持更新

引用 5 楼 wushuiyouyou 的回复:
执行到 rs1.Fields("根数") = snum时,错误提示当前不支持更新

cnn或rs1需要使用客户端游标。x.CursorLocation = adUseClient
引用 4 楼 wushuiyouyou 的回复:
哦,还有rs1.RecordCount 为什么总是-1 ,可是我的数据表中有数具

ADO 无法确定记录数时该属性返回 –1。

错误原因也是你没有使用客户端游标。
记录数大于1条就不允许更新了,应该是。
引用 4 楼 wushuiyouyou 的回复:
哦,还有rs1.RecordCount 为什么总是-1 ,可是我的数据表中有数具


设置连接对象的CursorLocation属性为 UseClient
补充:VB ,  数据库(包含打印,安装,报表)
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,