private rs as new adodb.recordset
Private Sub Form_Load()rs.Fields.Append "ID", adVarChar, 50
rs.Fields.Append "Name", adVarChar, 50
rs.openset me.datagrid1.datasource=rs
'可能是這個東西搞的鬼呀.不知道如何是好了.end subPrivate Sub Command1_Click()
rs.AddNew
rs.Fields(0) = "ddd"
rs.Fields(1) = "ddd"
MsgBox rs.recordcountEnd SubPrivate Sub Command2_Click()
If (Not rs.EOF) And (Not rs.BOF) And rs.RecordCount > 0 Then
rs.Delete
If rs.RecordCount > 0 Then
rs.MoveLast
End If
MsgBox rs.RecordCount
End If
End Sub
在這里我先點 command1 click 結果 1
然後 command2 click 結果 0
再 command1 click 結果 0 (這不正確呀)
再 command1 click 結果 0 (這不正確呀)有沒有人能給我講一下如何讓我點一下command1 結果變為正確的.
Private Sub Form_Load()rs.Fields.Append "ID", adVarChar, 50
rs.Fields.Append "Name", adVarChar, 50
rs.openset me.datagrid1.datasource=rs
'可能是這個東西搞的鬼呀.不知道如何是好了.end subPrivate Sub Command1_Click()
rs.AddNew
rs.Fields(0) = "ddd"
rs.Fields(1) = "ddd"
MsgBox rs.recordcountEnd SubPrivate Sub Command2_Click()
If (Not rs.EOF) And (Not rs.BOF) And rs.RecordCount > 0 Then
rs.Delete
If rs.RecordCount > 0 Then
rs.MoveLast
End If
MsgBox rs.RecordCount
End If
End Sub
在這里我先點 command1 click 結果 1
然後 command2 click 結果 0
再 command1 click 結果 0 (這不正確呀)
再 command1 click 結果 0 (這不正確呀)有沒有人能給我講一下如何讓我點一下command1 結果變為正確的.
rs.AddNew
rs.Fields(0) = "ddd"
rs.Fields(1) = "ddd"
rs.update
MsgBox rs.recordcountEnd SubPrivate Sub Command2_Click()
If (Not rs.EOF) And (Not rs.BOF) And rs.RecordCount > 0 Then
rs.Delete
rs.update
If rs.RecordCount > 0 Then
rs.MoveLast
End If
MsgBox rs.RecordCount
End If
End Sub你的两个rs.update都没有加呀
Private Sub Form_Load()
rs.CursorLocation=adUseclient'使用客户端游标
rs.CursorType=AdOpenDynamic
rs.LockType=adLockOptimistic
rs.Fields.Append "ID", adVarChar, 50
rs.Fields.Append "Name", adVarChar, 50
rs.openset datagrid1.datasource=rs
datagrid1.refreshend subPrivate Sub Command1_Click()
rs.AddNew
rs.Fields(0) = "ddd"
rs.Fields(1) = "ddd"
rs.update'要更新才有用的
rs.movelast
rs.movefirst
MsgBox rs.RecordCount
End SubPrivate Sub Command2_Click()
If (Not rs.EOF) And (Not rs.BOF) Then
rs.Delete
If rs.RecordCount > 0 Then
rs.MoveLast
End If
MsgBox rs.RecordCount
End If
End Sub
应该有rs.update
"应该有rs.update"這個東西俺早就試過了.
不管用!!!!!!!!!!!!!!!!!!!!!不知道你回貼子的時候有沒有試下下這個怪像/
還有那個
datagrid1.refresh也不行呀看看哪裡有沒有高人呀?
來幫個忙.
搂住的情况是真实的我解决的办法是
当点击Command2 删除完纪录后
点击Command1添加一条记录,然后双击DataGrid控件,再点击Command1,你会发现.............
请在rs.recordcount之前用以下两语句,才能得到正确的记录数。
rs.movefirst
rs.movelast
作为良好的习惯rs.Update应该添加,但本例可不加Private rs As New ADODB.RecordsetPrivate Sub Form_Load()rs.Fields.Append "ID", adVarChar, 50
rs.Fields.Append "Name", adVarChar, 50
rs.openSet Me.DataGrid1.DataSource = rsEnd SubPrivate Sub Command1_Click()rs.AddNew
rs.Fields(0) = "ddd"
rs.Fields(1) = "ddd"' rs.UpdateMsgBox rs.RecordCountEnd SubPrivate Sub Command2_Click()
If (Not rs.EOF) And (Not rs.BOF) And rs.RecordCount > 0 Then
rs.Delete
If rs.RecordCount > 0 Then
rs.MoveLast
End If'***********加上这句**************
rs.MoveFirst
'******************************** MsgBox rs.RecordCount End If
End Sub