我在Form_Load里写了一些如下代码:
//在数据库里加入一条记录
sSql = "INSERT INTO TBL_Config (type_no,provider,kind,description) VALUES ('" & "1_1" & "','" & "华硕" & "',' ',' ')"
Set rsCmp = New ADODB.Recordset
rsCmp.Open sSql, gConnection, adOpenDynamic, adLockOptimistic
//在datagrid的属性栏里已经绑定adodc
AdodcProvider.ConnectionString = gConnect
AdodcProvider.RecordSource = "select * from TBL_Config where provider='" & "华硕" & "' and type_no='" & "1_1" & "'"
AdodcProvider.Refresh结果那条记录确实插入数据库中,但在datagrid里就是显示不出来,如果再执行一次
以上代码,则只显示上次那条记录,而这次新插入的记录也同样在数据库但在datagrid也不显示。好像每次datagrid的刷新比数据库的刷新慢一拍。
请教各位高手,怎样解决这个问题,希望给出具体的实现代码。后来曾经尝试加入一下以下两行代码也不行。
DGridProvider.ReBind
DGridProvider.Refresh
//在数据库里加入一条记录
sSql = "INSERT INTO TBL_Config (type_no,provider,kind,description) VALUES ('" & "1_1" & "','" & "华硕" & "',' ',' ')"
Set rsCmp = New ADODB.Recordset
rsCmp.Open sSql, gConnection, adOpenDynamic, adLockOptimistic
//在datagrid的属性栏里已经绑定adodc
AdodcProvider.ConnectionString = gConnect
AdodcProvider.RecordSource = "select * from TBL_Config where provider='" & "华硕" & "' and type_no='" & "1_1" & "'"
AdodcProvider.Refresh结果那条记录确实插入数据库中,但在datagrid里就是显示不出来,如果再执行一次
以上代码,则只显示上次那条记录,而这次新插入的记录也同样在数据库但在datagrid也不显示。好像每次datagrid的刷新比数据库的刷新慢一拍。
请教各位高手,怎样解决这个问题,希望给出具体的实现代码。后来曾经尝试加入一下以下两行代码也不行。
DGridProvider.ReBind
DGridProvider.Refresh
set cn = new ADODB.connectionsSql = "INSERT INTO TBL_Config (type_no,provider,kind,description) VALUES ('" & "1_1" & "','" & "华硕" & "',' ',' ')"cn.execute sSql
end subPrivate Sub cn_ExecuteComplete(ByVal RecordsAffected As Long, ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, ByVal pCommand As ADODB.Command, ByVal pRecordset As ADODB.Recordset, ByVal pConnection As ADODB.Connection)
If AdodcProvider.Recordset.State = adStateOpen Then
AdodcProvider.Recordset.Requery
Else
AdodcProvider.RecordSource = "select * from TBL_Config where provider='" & "华硕" & "' and type_no='" & "1_1" & "'"
End If
End Sub