Dim isAdding As Boolean
Dim rsr As New ADODB.Recordset
Public Sub InitRecordSet()
If (rsr.State = 1) Then
rsr.Close
End If
rsr.Open "select * from [注塑销售订单]", conn, 3, 2
Set DataGrid1.DataSource = rsr
End SubSet DataGrid1.DataSource = rsr
/提示行集合不能作为标签 7004
rsr.Open "select * from [注塑销售订单]", conn, 3, 2改成如下:
rsr.CursorLocation = adUseClient
rsr.Open "select * from [注塑销售订单]", conn, adOpenDynamic, adLockOptimistic
比如说你的数据库有两条一样的数据,那么你在客户端修改其中一条,再更新,ADO知道你修改的是哪一条呢?http://blog.csdn.net/cly2004/article/details/333304
最简单的方法以就是: 换为: rsr.Open "select * from [注塑销售订单]", conn, adOpenStatic, adLockOptimistic
当没有连接对象时,下面的代码可以运行:
' Create a Recordset
Dim rst As ADODB.RecordsetPrivate 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 = rstEnd Sub
Private Sub Command2_Click()
' Modify the data through code
rst.MoveFirst
rst(1) = "Changed Field"
rst.UpdateBatch
End SubPrivate Sub Form_Load()
Command1.Caption = "Populate"
Command2.Caption = "Update"
End Sub