各位大虾,本菜鸟在做一个文件管理软件,其中的“保存”按钮功能实现如下功能:
程序读取8个文本框中的数据并作为一个完整的记录保存在数据库里,更新datagrid上的数据
该datagrid空间是和adodc1绑定的。
但是点击“保存”按钮后,发现数据库中的记录数虽然已经增加,但是datagrid的记录
并不能及时更新。
而且比较奇怪的是:当我单步跟踪的时候,却发现datagrid的记录能够及时更新。跟全速运行的
时候不一样。
程序如下:
Private Sub Cmd_save_Click()
Dim adors As New adodb.Recordset
Dim adocon As New adodb.Connection
Dim c As Integer
If Text1(0).Text = "" Then
MsgBox "文件编码不能为空"
Else
Adodc1.RecordSource = "select * from 文件信息 where 文件编码 = '" + Text1(0).Text + "'"
Adodc1.Refresh
If Adodc1.Recordset.RecordCount = 0 Then
c = MsgBox("确认要保存该信息吗?", 33, "文件信息管理系统")
If c = vbOK Then
adocon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Program Files\Microsoft Visual Studio\VB98\文件管理系统\文件编码.mdb;Persist Security Info=False"
adors.Open "select * from 文件信息", adocon, adOpenKeyset, adLockBatchOptimistic
Set adors = adocon.Execute("select * from 文件信息")
Text2.Text = adors.Fields("文件编码")
Set adors = adocon.Execute("insert into 文件信息 values('" & Text1(0).Text & "','" & Text1(1).Text & _
"','" & Text1(2).Text & "','" & Text1(3).Text & "','" & Text1(4).Text & "','" & Text1(5).Text & "','" _
& Text1(6).Text & "','" & Text1(7).Text & "','" & Combo1 & "')")
Else
End If
Else
MsgBox "对不起,该文件已存在,不能再保存", 64, "文件管理系统"
End If
End If
Adodc1.RecordSource = "select * from 文件信息 "
Adodc1.Refresh
DataGrid1.Refresh
End Sub
程序读取8个文本框中的数据并作为一个完整的记录保存在数据库里,更新datagrid上的数据
该datagrid空间是和adodc1绑定的。
但是点击“保存”按钮后,发现数据库中的记录数虽然已经增加,但是datagrid的记录
并不能及时更新。
而且比较奇怪的是:当我单步跟踪的时候,却发现datagrid的记录能够及时更新。跟全速运行的
时候不一样。
程序如下:
Private Sub Cmd_save_Click()
Dim adors As New adodb.Recordset
Dim adocon As New adodb.Connection
Dim c As Integer
If Text1(0).Text = "" Then
MsgBox "文件编码不能为空"
Else
Adodc1.RecordSource = "select * from 文件信息 where 文件编码 = '" + Text1(0).Text + "'"
Adodc1.Refresh
If Adodc1.Recordset.RecordCount = 0 Then
c = MsgBox("确认要保存该信息吗?", 33, "文件信息管理系统")
If c = vbOK Then
adocon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Program Files\Microsoft Visual Studio\VB98\文件管理系统\文件编码.mdb;Persist Security Info=False"
adors.Open "select * from 文件信息", adocon, adOpenKeyset, adLockBatchOptimistic
Set adors = adocon.Execute("select * from 文件信息")
Text2.Text = adors.Fields("文件编码")
Set adors = adocon.Execute("insert into 文件信息 values('" & Text1(0).Text & "','" & Text1(1).Text & _
"','" & Text1(2).Text & "','" & Text1(3).Text & "','" & Text1(4).Text & "','" & Text1(5).Text & "','" _
& Text1(6).Text & "','" & Text1(7).Text & "','" & Combo1 & "')")
Else
End If
Else
MsgBox "对不起,该文件已存在,不能再保存", 64, "文件管理系统"
End If
End If
Adodc1.RecordSource = "select * from 文件信息 "
Adodc1.Refresh
DataGrid1.Refresh
End Sub
然后datagrid上也要同步显示这个功能应该是很容易实现呀
Adodc1.RecordSource = "select * from 文件信息 "
Adodc1.Refresh
Sleep 500
DataGrid1.Refresh
5楼的哥们,我想问一下用adodc如何实现以下语句
Set adors = adocon.Execute("insert into 文件信息 values('" & Text1(0).Text & "','" & Text1(1).Text & _
"','" & Text1(2).Text & "','" & Text1(3).Text & "','" & Text1(4).Text & "','" & Text1(5).Text & "','" _
& Text1(6).Text & "','" & Text1(7).Text & "','" & Combo1 & "')")
"INSERT INTO 文件信息 VALUES ('" & _
Text1(0).Text & "','" & Text1(1).Text & _
....
Adodc1.Refresh
Adodc1.RecordSource = "select * from 文件信息 "
Adodc1.Refresh