使用同一个Adodb.Connect对象,你的问题应该是可以解决的 你上面用的是QueryConnectionString字符吧?建议改为如下形式Dim MyConnect As ADODB.ConnectionPrivate Sub Form_Load() Set MyConnect = New ADODB.Connection MyConnect.CursorLocation = adUseClient '赋你的连接字符串给MyConnect对象 MyConnect.ConnectionString = QueryConnectionString MyConnect.Open
End SubPrivate Sub Command1_Click() Dim cmd As New ADODB.Command Dim rs As New ADODB.Recordset
cmd.ActiveConnection = MyConnect cmd.CommandType = adCmdText cmd.CommandText = "UPDATE user SET username='testb' WHERE ID=12" cmd.Execute
rs.Open "user", MyConnect, adOpenStatic, adLockReadOnly rs.Filter = "ID=12" MsgBox rs.Fields("username") rs.Close End Sub
或是cnn.BeginTrans
...
cnn.CommitTrans
rst.open我想是因为数据还在缓冲区,没写入磁盘。
你上面用的是QueryConnectionString字符吧?建议改为如下形式Dim MyConnect As ADODB.ConnectionPrivate Sub Form_Load()
Set MyConnect = New ADODB.Connection
MyConnect.CursorLocation = adUseClient
'赋你的连接字符串给MyConnect对象
MyConnect.ConnectionString = QueryConnectionString
MyConnect.Open
End SubPrivate Sub Command1_Click()
Dim cmd As New ADODB.Command
Dim rs As New ADODB.Recordset
cmd.ActiveConnection = MyConnect
cmd.CommandType = adCmdText
cmd.CommandText = "UPDATE user SET username='testb' WHERE ID=12"
cmd.Execute
rs.Open "user", MyConnect, adOpenStatic, adLockReadOnly
rs.Filter = "ID=12"
MsgBox rs.Fields("username")
rs.Close
End Sub
但是比如我是用dataenvrinment或者adodc连接来绑定数据就有问题了。到底这个问题的根源事?
然后自己再写程序把数据显示到ListView中,显示到listView中的数据不正确。