行集合不能作为标签
本帖最后由 bcrun 于 2013-11-17 10:49:33 编辑 连接字符串的问题rsr.Open "select * from [注塑销售订单]", conn, 3, 2改成如下:
rsr.CursorLocation = adUseClient
rsr.Open "select * from [注塑销售订单]", conn, adOpenDynamic, adLockOptimistic
给数据库表增加一个主键。这个错误的原因是因为脱机的数据没有主键ADO不知道它如何和数据库的记录对应。
比如说你的数据库有两条一样的数据,那么你在客户端修改其中一条,再更新,ADO知道你修改的是哪一条呢?
http://blog.csdn.net/cly2004/article/details/333304
顶....
最简单的方法以就是: 换为: rsr.Open "select * from [注塑销售订单]", conn, adOpenStatic, adLockOptimistic 应该是绑定有活动的连接对象 conn 的记录集时,要求采用动态游标(2)。而楼主用的是静态游标(3)。
当没有连接对象时,下面的代码可以运行:
' Create a Recordset
Dim rst As ADODB.Recordset
Private Sub Command1_Click()
Set rst = New ADODB.Recordset
' Add columns to the Recordset
rst.Fields.Append "Key", adInteger
rst.Fields.Append "Field1", adVarChar, 40, adFldIsNullable
rst.Fields.Append "Field2", adDate
' Open the Recordset
rst.Open , , 3, 2
' Add data to the Recordset
rst.AddNew Array("Key", "Field1", "Field2"), _
Array(1, "string1", Date)
rst.AddNew Array("Key", "Field1", "Field2"), _
Array(2, "string2", #1/1/2000#)
' Populate the Data in the DataGrid
Set DataGrid1.DataSource = rst
End Sub
Private Sub Command2_Click()
' Modify the data through code
rst.MoveFirst
rst(1) = "Changed Field"
rst.UpdateBatch
End Sub
Private Sub Form_Load()
Command1.Caption = "Populate"
Command2.Caption = "Update"
End Sub
补充:VB , 基础类