先查询到一条数据,用adodc1来连接datagrid显示这条数据
sql = "select * from dzdb where 车号='" & Trim(Text1.Text) & "' and bzw=0"
Adodc1.RecordSource = sql
Adodc1.Refresh
Adodc1.CommandType = adCmdText
Set DataGrid1.DataSource = Adodc1
DataGrid1.ReBind
DataGrid1.Refresh
对一条数据修改,用adodc修改
Adodc1.Recordset.Fields("类别").Value =lb1
Adodc1.Recordset.Fields("bzw").Value = 1
Adodc1.Recordset.Update
Adodc1.RecordSource = ""
修改之后,然后用adodc2来显示datagrid
Dim sql1 As String
sql1 = "select * from dzdb where 车号='" & Trim(Text1.Text) & "' and bzw=0"
Adodc2.CommandType = adCmdText
Adodc2.RecordSource = sql1
Adodc2.Refresh
Set DataGrid1.DataSource = Adodc2
DataGrid1.ReBind
DataGrid1.Refresh
查这个车号的bzw=0的,就是想让刚才修改过的那条数据不显示,如果还有别的就显示别的bzw=0的,但是运行后,上面这组数据像是不运行似的,datagrid闪了一下,但数据还是以前那样的,bzw也没有变1,其他"类别"等的内容也没进去,还是空的。
我做了如下动作:
1、如果我把sql1那里点成断点,当运行到那里时停一下,哎,这就好使了,datagrid里没数据了。
2、我把sql1=“select……and bzw=1”,改成1时,datagrid竟没数据了。别人说是不是这时bzw还没有被改成1啊,但这时,我又做了下一步测试。
3、我又把sql1那里做成断点,运行到那里时一停(bzw=1),数据显示出来了,bzw确实已经是1了,里面其他内容也都有了。求高手指点,这是什么意思啊,代码没改,怎么运行成这个样子啊?
sql = "select * from dzdb where 车号='" & Trim(Text1.Text) & "' and bzw=0"
Adodc1.RecordSource = sql
Adodc1.Refresh
Adodc1.CommandType = adCmdText
Set DataGrid1.DataSource = Adodc1
DataGrid1.ReBind
DataGrid1.Refresh
对一条数据修改,用adodc修改
Adodc1.Recordset.Fields("类别").Value =lb1
Adodc1.Recordset.Fields("bzw").Value = 1
Adodc1.Recordset.Update
Adodc1.RecordSource = ""
修改之后,然后用adodc2来显示datagrid
Dim sql1 As String
sql1 = "select * from dzdb where 车号='" & Trim(Text1.Text) & "' and bzw=0"
Adodc2.CommandType = adCmdText
Adodc2.RecordSource = sql1
Adodc2.Refresh
Set DataGrid1.DataSource = Adodc2
DataGrid1.ReBind
DataGrid1.Refresh
查这个车号的bzw=0的,就是想让刚才修改过的那条数据不显示,如果还有别的就显示别的bzw=0的,但是运行后,上面这组数据像是不运行似的,datagrid闪了一下,但数据还是以前那样的,bzw也没有变1,其他"类别"等的内容也没进去,还是空的。
我做了如下动作:
1、如果我把sql1那里点成断点,当运行到那里时停一下,哎,这就好使了,datagrid里没数据了。
2、我把sql1=“select……and bzw=1”,改成1时,datagrid竟没数据了。别人说是不是这时bzw还没有被改成1啊,但这时,我又做了下一步测试。
3、我又把sql1那里做成断点,运行到那里时一停(bzw=1),数据显示出来了,bzw确实已经是1了,里面其他内容也都有了。求高手指点,这是什么意思啊,代码没改,怎么运行成这个样子啊?
sql1 = "select * from dzdb where 车号='" & Trim(Text1.Text) & "' and bzw=0"
这句应该 写成
sql1 = "select * from dzdb where 车号='" & Trim(Text1.Text) & "' and bzw=1"
Adodc1.Recordset.Fields("bzw").Value = 1
Adodc1.Recordset.Update 已经把这条数据的bzw字段修改为1了,而我现在想实现的是让datagrid不显示这条数据,所以要查询bzw=0啊,对吧,而且断点运行时bzw=0就是把数据刷没了,就是我要的那个样子,而为什么不设置断点运行时,它就不能刷没呢?
只有这样才能立即更新到数据库并且立即查看,否则看到的是旧数据
谢谢你帮我!