vb高分求助:关于在记录集中查询的问题,请各位高手帮忙,谢谢! 200
我主要想求助以下两个问题:1.关于记录集的Filter属性,是不是不能设置为:"字段名isnotnull",或者:"left(字段名,2)='数值'"2.可否在记录集中使...
我主要想求助以下两个问题:
1. 关于记录集的Filter属性,是不是不能设置为:"字段名 is not null",
或者:"left(字段名,2) = '数值'"
2. 可否在记录集中使用sql语句?比如:select * from 记录集 where 查询条件。
我使用这个语句时数据库路径不知道怎么的就变我vb6.0的安装路径了,然后提示找不
到数据库,请各位高手指教,应该如何用sql语句查询一个记录集。
问题是这样的:我的数据库在服务器上,每个客户端都需要从数据库中加载数据。为避免频繁的访问数据库,我想让客户端一启动就将数据库中的数据加载到本地内存,使用以下代码:
adodc1.ConnectionString = 数据库路径
adodc1.RecordSource = "select * from 数据表"
adodc1.Refresh
然后我需要的数据再从adodc1.recordset中检索。一开始是想用Filter属性的,但是遇到了问题1,所以就想用sql语句,像查询一个数据表一样查询adodc1.recordset,结果遇到了问题2.
请各位高手帮忙看看,谢谢!待问题解决后必定会追加分数,十分感谢!
补充一下,我想将在记录集中查询的结果赋给另一个记录集 展开
1. 关于记录集的Filter属性,是不是不能设置为:"字段名 is not null",
或者:"left(字段名,2) = '数值'"
2. 可否在记录集中使用sql语句?比如:select * from 记录集 where 查询条件。
我使用这个语句时数据库路径不知道怎么的就变我vb6.0的安装路径了,然后提示找不
到数据库,请各位高手指教,应该如何用sql语句查询一个记录集。
问题是这样的:我的数据库在服务器上,每个客户端都需要从数据库中加载数据。为避免频繁的访问数据库,我想让客户端一启动就将数据库中的数据加载到本地内存,使用以下代码:
adodc1.ConnectionString = 数据库路径
adodc1.RecordSource = "select * from 数据表"
adodc1.Refresh
然后我需要的数据再从adodc1.recordset中检索。一开始是想用Filter属性的,但是遇到了问题1,所以就想用sql语句,像查询一个数据表一样查询adodc1.recordset,结果遇到了问题2.
请各位高手帮忙看看,谢谢!待问题解决后必定会追加分数,十分感谢!
补充一下,我想将在记录集中查询的结果赋给另一个记录集 展开
7个回答
2011-10-30
展开全部
问题一:已经用select语句得到的记录集,不能再次用sql语句过滤,而是必须用VB语句一条记录一条记录的查找。
问题二:不要把Vb语句和SQL语句搞混,Left函数是VB的,SQL不认识。
问题三:SQL服务器本身就是用于支持多人频繁访问,很多网络游戏用的就是这种数据库,难道你的程序访问量比他们还大?就算是这样,也可以通过服务器负载均衡,分布式访问等技术解决,这已经和你的程序无关了。
问题四:鉴于第三点,你就别想着什么记录集过滤了,该用select ... from .. where...的时候就用吧
问题二:不要把Vb语句和SQL语句搞混,Left函数是VB的,SQL不认识。
问题三:SQL服务器本身就是用于支持多人频繁访问,很多网络游戏用的就是这种数据库,难道你的程序访问量比他们还大?就算是这样,也可以通过服务器负载均衡,分布式访问等技术解决,这已经和你的程序无关了。
问题四:鉴于第三点,你就别想着什么记录集过滤了,该用select ... from .. where...的时候就用吧
2011-10-27
展开全部
关于记录集的Filter属性,是不是不能设置为:"字段名 is not null",或者:"left(字段名,2) = '数值'"
应该可以写成: 字段名 Like 'XX*',is not 应该不可以吧,<、>、<=、>=、<>、= 或 LIKE 是支持的
赋值可以试一下
Dim rs As New adodb.Recordset
set rs= adodc1.recordset
应该可以写成: 字段名 Like 'XX*',is not 应该不可以吧,<、>、<=、>=、<>、= 或 LIKE 是支持的
赋值可以试一下
Dim rs As New adodb.Recordset
set rs= adodc1.recordset
更多追问追答
追问
呵呵,我不想使用adodc控件啊,再说,使用这个控件也不能解决我的问题~
追答
不用控件就直接定义记录集变量,通过执行sql语句就可以了,有记录集了想怎么玩就怎么玩,其实和你把adodc控件隐藏起来,自己加按钮什么的,然后在事件里面用adodc的方法属性差不多,呵呵,主要的代码就几句
Dim conn As New adodb.Connection
Dim rs As New adodb.Recordset
Dim connStr As String, sql As String
connStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=数据库;Persist Security Info=False" 'Access
conn.Open connStr
sql="select * from 表"
rs.Open sql, conn, adOpenDynamic, adLockBatchOptimistic '后两个参数根据需求搭配
还有好多属性,可以看一下Microsoft ActiveX Data Objects (ADO)帮组文件
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
'菜单"工程"->"引用" 找 Microsoft ActiveX Data Object....
然后用sql嵌套即可
然后用sql嵌套即可
更多追问追答
追问
sql嵌套是在数据库中查询呢还是在内存中查询?
追答
在数据库中查询
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个不是问题,可以解决!如果有诚意就加我为好友,我再告诉你QQ号。我可以把代码给你,前提是你要舍得分哟。
追问
只要问题能解决,分是不成问题的。qq:553589984,验证信息填写:vb 即可,谢谢!
追答
加了,速回复!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2011-11-02
展开全部
己加qq联系
追问
请把答案贴上来吧,时间不多了,我将在4个小时内结贴。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询