VB ACCESS模糊搜索问题 100
我自己想写一个数据库软件来管理我的影音资源。其实就是存储一些电影、音乐、书籍的资料,以方便后面的检索。现在想做一个模糊搜索,用Txt_Str文本框来输入关键字。搜索范围是...
我自己想写一个数据库软件来管理我的影音资源。其实就是存储一些电影、音乐、书籍的资料,以方便后面的检索。
现在想做一个模糊搜索,用Txt_Str文本框来输入关键字。搜索范围是所有字段(注意:是所有字段),代码该怎么写呢?得遍历所有的字段吗?不然的话只能是把所有的“字段”名称写到代码里来搜索了,我不怎么想用这个方法,原因是软件写好后如果动态增加了“字段”的话,就得修改代码才能搜索新增的“字段”了,不知道我的表述是否清楚,请教大家,先谢了!
简而言之就是:VB根据关键字模糊搜索整张表,求具体代码 展开
现在想做一个模糊搜索,用Txt_Str文本框来输入关键字。搜索范围是所有字段(注意:是所有字段),代码该怎么写呢?得遍历所有的字段吗?不然的话只能是把所有的“字段”名称写到代码里来搜索了,我不怎么想用这个方法,原因是软件写好后如果动态增加了“字段”的话,就得修改代码才能搜索新增的“字段”了,不知道我的表述是否清楚,请教大家,先谢了!
简而言之就是:VB根据关键字模糊搜索整张表,求具体代码 展开
6个回答
展开全部
给你一个获取函数,返回数据表模糊查询语句(连接字符串,表名称,查询关键字),可以动态获组合查询语句
Public Function cx_str(conzfc As String, biao As String, str As String) As String '返回数据表模糊查询语句(连接字符串,表名称,查询关键字)
Dim fs
Dim s1 As String
Dim s2 As String
Dim i As Integer
Dim conn As ADODB.Connection
Dim rs As ADODB.Recordset
Set conn = New ADODB.Connection
Set rs = New ADODB.Recordset
conn.Open conzfc
s1 = "select * from " & biao
s2 = ""
rs.Open s1, conn, 3 '执行查询语句
For Each fs In rs.Fields
s2 = "or " & fs.Name & "like%" & str & "%" & s2
Next
cx_str = " select * from " & biao & " where " & Mid(s2, 4)
rs.Close '释放内存
conn.Close
Set rs = Nothing
Set conn = Nothing
End Function
追问
我用DataGrid来显示,你的这段过程怎么调用呢?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
另外一种思路:
将数据库字段名存放到一文本文件,查询时从文件提取字段名。
当数据库字段变化时,只要更新文本文件中的字段名,不需要另外修改程序。
你可以在程序中加入文本文件内容修改功能,或用其他程序打开文本文件修改。
将数据库字段名存放到一文本文件,查询时从文件提取字段名。
当数据库字段变化时,只要更新文本文件中的字段名,不需要另外修改程序。
你可以在程序中加入文本文件内容修改功能,或用其他程序打开文本文件修改。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
第一个语句是用在ADO对象的,是对的,看看你的数据是不是确实只有一个满足条件的,另外LIKE和单引号是查字符类型的数据,你可以这样试试
select * from table where str(id) like '%2%'
第二个语句是用在DAO对象上的
select * from table where str(id) like '%2%'
第二个语句是用在DAO对象上的
追问
第一个语句?我没写代码呀…能具体给出关键代码吗?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
遍历所有字段.你新增了字段也不用改代码的呀
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以动态获取所有字段的,这样就不用写死到代码里,字段怎么换都OK
追问
对对对,就是你说的这个意思。还请赐教,因为我也是刚接触数据库,先写的实现功能再来仔细研究,呵呵。。
能详细点吗?比如搜索我数据库里的“Vedio”
追答
刚接触数据库数据库是吧,不能直接告诉你怎么做,你得先学下基础
你百度w3school,上面有sql的相关教程
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询