在线等!请教问题,VB+Access,读取数据库表数据后返回的Recordset没有更新。多谢了,提分等
VB中添加了Datagrid,然后与ADO控件关联起来,写了下面的小程序,第一次执行,查询jf1表所有数据,正常返回并在Datagrid展现了出来。
Private Sub Form_Load()
Dim conn As Connection 'conn为连接
Dim sql As String
Dim rs1 As Recordset
Set conn = CreateObject("adodb.connection")
conn.Open "provider=msdasql;database=jf1;data source=jf1" '打开数据源
sql = "select * from jf1"
Set rs1 = conn.Execute(sql)
Do While Not rs1.EOF
For i = 0 To rs1.Fields.Count - 1
Print rs1.Fields(i) '输出jf1表中各字段
Next i
rs1.MoveNext
Loop
rs1.Close
Set rs1 = Nothing
conn.Close
Set conn = Nothing
End Sub
可问题来了,之后我在sql中限定了where,按道理应该只返回一条记录,可无论怎么运行,怎么修改where限定,都还是全部返回记录(和第一次执行一样)甚至写where 0=1也一样返回全部,where没有生效,我的感觉是内存中的Recordset还是原来的,没有更新,请各位大拿们帮我看看是怎么回事?多谢了,提分等
Private Sub Form_Load()
Dim conn As Connection 'conn为连接
Dim sql As String
Dim rs1 As Recordset
Set conn = CreateObject("adodb.connection")
conn.Open "provider=msdasql;database=jf1;data source=jf1" '打开数据源
sql = "select * from jf1 T where T.id = 1 "
Set rs1 = conn.Execute(sql)
Do While Not rs1.EOF
For i = 0 To rs1.Fields.Count - 1
Print rs1.Fields(i) '输出jf1表中各字段
Next i
rs1.MoveNext
Loop
rs1.Close
Set rs1 = Nothing
conn.Close
Set conn = Nothing
End Sub
--------------------编程问答-------------------- 是不是你手动设置了ADO控件和数据库的关联? --------------------编程问答-------------------- sql = "select * from jf1 T where T.id = 1 "
这个T是否多余?
--------------------编程问答-------------------- to Veron_04 是不是你手动设置了ADO控件和数据库的关联?
是手动设置的 --------------------编程问答-------------------- 把那个T去掉,我觉得这个是多余的 --------------------编程问答-------------------- sql = "select * from jf1 where id = 1 "
试过了,不行。估计不是这里的问题
--------------------编程问答-------------------- 你的SQL构建的正确否?ID是什么类型的?需不需要添加单引号?等号旁边是否有多余的空格? --------------------编程问答-------------------- sql = "select * from jf1 where id =1"
--------------------编程问答-------------------- sql = "select * from jf1 where id=1"
--------------------编程问答-------------------- lz的问题和代码完全是风马牛不相及,
你的代码是在窗体上打印你的记录,但窗体加载的时候在窗体打印的东西是看不到的
你的问题又是在datagride里显示数据 --------------------编程问答-------------------- 哈哈哈,对的哈!我还没有看后免得代码,以为问题出在Sql上。楼主,佩服
补充:VB , 数据库(包含打印,安装,报表)