请问为什么用一下方式保存到数据库中的数据只有从新运行时才可以看到?

htting 2006-03-08 03:46:36
Private gCon As ADODB.Connection 'ACCESS数据库文件的名称
Private gRst As ADODB.Recordset '数据库连接对象
Private gFile As String '数据库集合对象

Private Sub cmdAdd_Click() '添加姓名和手机号
gRst.AddNew
End Sub

Private Sub cmdConfirm_Click()
gRst.Fields!姓名 = txtName
gRst.Fields!手机 = txtMobile
gRst.Update
Adodc1.Refresh
DataGrid1.Refresh
MsgBox "保存成功", vbOKOnly, "提示"
End Sub

Private Sub Form_Load()
Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path &\WorkTask.mdb;Persist Security Info=False"
Adodc1.CursorLocation = adUseClient
Adodc1.CommandType = adCmdText
Adodc1.RecordSource = "select * from Linkman"
Adodc1.Refresh
Set DataGrid1.DataSource = Adodc1

If Adodc1.Recordset.RecordCount = 0 Then
txtName.Text = ""
txtMobile.Text = ""
Else
txtName.Text = nz(Adodc1.Recordset.Fields(0).Value, "")
txtMobile.Text = nz(Adodc1.Recordset.Fields(1).Value, "")
End If
End Sub

由于不想在修改和添加的时候影响到datagrid中的数据,所以没有将txtName、txtMobile和adodc1绑定。
为什么在保存的时候无法看到保存后的结果呢,只有重新运行时才可以看到保存后的结果?谢谢
...全文
30 点赞 收藏 2
写回复
2 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
changechange 2006-03-08
你没有写清楚 gRst 的open 参数,如果是控件的话有属性可以设定的,你要查一下是否为动态集。

要用 recordset.requery 重新刷新一下的。
回复
wwwwb 2006-03-08
try:
gRst.Update
gRst.requery
Adodc1.Refresh
DataGrid1.Refresh
MsgBox "保存成功", vbOKOnly, "提示"
回复
相关推荐
发帖

1188

社区成员

VB 数据库(包含打印,安装,报表)
申请成为版主
帖子事件
创建了帖子
2006-03-08 03:46
社区公告
暂无公告