就是一个修改数据的按钮
Set conn = New ADODB.Connection
ConnectionString = "provider=Microsoft.Jet.oledb.4.0;" & "data source=db1.mdb;" & ";Persist Security Info=True"
conn.Open "provider=Microsoft.Jet.oledb.4.0;" & "data source=db1.mdb;" & ";Persist Security Info=True"
conn.Execute "update biao1 set near = " & Text1.Text & " where 编号=" & DataGrid1.Columns(0) & ""
程序运行OK然后我要对他更新吧
Adodc1.Refresh
不行 再加入
DataGrid1.Refresh
还是不行 数据已经修改了 但是DATA里的显示还是不给我更新出来
然后我索性这里不更新了
把Adodc1.Refresh
单独放一个按钮4 然后点击修改后 我点击按钮4 DATA更新了于是我就想我在修改按钮下调用按钮4
嘿嘿 还是不能显示更新
v
你们说奇怪吧 反正我把修改和 Adodc1.Refresh 放一起他就不能对查询更新
然后我再次按下修改按钮 他到是更新了 奇怪奇怪 高手来解决下
Set conn = New ADODB.Connection
ConnectionString = "provider=Microsoft.Jet.oledb.4.0;" & "data source=db1.mdb;" & ";Persist Security Info=True"
conn.Open "provider=Microsoft.Jet.oledb.4.0;" & "data source=db1.mdb;" & ";Persist Security Info=True"
conn.Execute "update biao1 set near = " & Text1.Text & " where 编号=" & DataGrid1.Columns(0) & ""
程序运行OK然后我要对他更新吧
Adodc1.Refresh
不行 再加入
DataGrid1.Refresh
还是不行 数据已经修改了 但是DATA里的显示还是不给我更新出来
然后我索性这里不更新了
把Adodc1.Refresh
单独放一个按钮4 然后点击修改后 我点击按钮4 DATA更新了于是我就想我在修改按钮下调用按钮4
嘿嘿 还是不能显示更新
v
你们说奇怪吧 反正我把修改和 Adodc1.Refresh 放一起他就不能对查询更新
然后我再次按下修改按钮 他到是更新了 奇怪奇怪 高手来解决下
解决方案 »
- 如何利用VBS实现对.bmp文件的对比?
- VB 编写的OCX控件,签入到aspx页面后,IE自动关闭
- 为何VB写的程序文本框内无法使用快捷方式ctrl+c,ctrl+v的
- 【问】如何做出像XP桌面上的快捷方式图标那样的控件?
- ★ 项目快到期了,这样的分组报表如何用ActiveReport实现 ★
- 一个困扰我的问题
- 怎么用vb做像 Front Page中的“导航”中的 那种树状结构???
- 命令行程序用打开方式 选择我的程序 出错
- 求教vb.net图形编成的几个问题
- 怎样在vb中调用用c++builder作的.ocx,.dll文件
- VB 变量地址问题
- 打印窗体 Form1.PrintForm 如何控制纵向 横向打印
原因:
SQL 命令是由 VB 发送给数据库引擎去执行的。发出之后,VB 的任务就完成了,它会继续执行后续的语句。此时,数据库的更新可能还没有完成,例如它需要进行磁盘操作,比较慢。你另设一个按钮手动点击,等于给了一个延迟。用程序直接调用又把延时去掉了。解决方法:1.
如果你的 DataGrid1 是绑定到 Adodc1 的,试试用
Adodc1.Recordset.Requry
替代
Adodc1.Refresh2
强制要求返回参数
Dim n As Long
conn.Execute "update biao1 set near = " & Text1.Text & " where 编号=" & DataGrid1.Columns(0) & "", n
Adodc1.Refresh
因为要求返回 RecordsAffected 参数,此 Execute 语句会等到数据库更新完成才执行完毕。3
使用待事件的连接对象,让 ExecuteComplete 事件自动触发 Adodc 更新Dim WithEvents conn As ADODB.Connection
Private Sub conn_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)
Adodc1.Refresh
End Sub
修改你的代码如下:
Set conn = New ADODB.Connection
Set rs = New ADODB.Recordset
Dim sql
'coon.ConnectionString = "provider=Microsoft.Jet.oledb.4.0;" & "data source=db1.mdb;" & ";Persist Security Info=True" '本句有错用下句
coon.ConnectionString = "provider=Microsoft.Jet.oledb.4.0;" & "data source=db1.mdb;" & "Persist Security Info=True"
conn.Open
sql = "update biao1 set near = " & Val(Text1.Text) & " where 编号=" & Val(DataGrid1.Columns(0)) & ""
rs.CursorLocation = adUseClient
rs.Open sql, cn, adOpenDynamic, adLockOptimistic
Set DataGrid1.DataSource = rs