找回密码
 加入
搜索
查看: 1756|回复: 2

[AU3基础] [已解决]求教SQLITE模糊查找问题.

[复制链接]
发表于 2012-6-14 10:45:36 | 显示全部楼层 |阅读模式
本帖最后由 超级死人 于 2012-7-5 20:12 编辑

请教大大们,sqlite的模糊查找应该怎么做.

在sqlite管理器里面可以使用sql语句查询可以正常操作并且得到反馈信息.

但是用au3编写的时候,不论怎么修改语句都不能查找正确信息,或者说,当列值是纯数字的时候可以显示,有英文字母或者汉字的时候就不能查询...

请大大们指教...
发表于 2012-6-28 10:39:50 | 显示全部楼层
;===============================================================================
;
; 函数名称.........:    _MSSQL_QueryEx
; 描述.............:    查询数据库
; 语法.............:    _MSSQL_QueryEx($oConnectionObj, $sTable, $sQueryBasis, $sExtractRow = '*')
; 参数(s)..........:    $iSQLCon = $oConnectionObj = Object, returned by _MSSQL_Con
;                       $sTable = 表名
;                       $sQueryBasis = 查询依据,该依据为SQL表达式如:Name='水木子' 或 年龄>18
;                       特别说明!如依据为字符型则需要用单引号如:正确的写法:Name='水木子' 错误的写法:Name=水木子
;                                 如依据为数值型则不需要使用单引号如:正确的写法:年龄>18 错误的写法:年龄>'18'  请注意单引号的使用。
;                       $sExtractRow = [可选参数] 提取查询结果列, 如:Name,提取多列可用分割符 "|" 隔开如:ID|Name|年龄  [默认 = "*" (全部提取)]
; 返回值(s)........:    成功 - Returns an Array
;                       失败 - 0, sets @error
;                       |1 - 连接数据库对象失败
;                       |2 - 表或字段不存在
;                       |3 - 结果不是一个数组
; 作者.............:    水木子
;
;===============================================================================
Func _MSSQL_QueryEx($oConnectionObj, $sTable, $sQueryBasis, $sExtractRow = '*')
        Local $oExecute, $sExpression
        If IsObj($oConnectionObj) And Not @error Then
                
                $sExtractRow = StringRegExpReplace($sExtractRow, '\|', ',')
                $sExpression = 'SELECT ' & $sExtractRow & ' FROM ' & $sTable & ' WHERE ' & $sQueryBasis
                $oExecute = $oConnectionObj.execute($sExpression)

                If Not $oExecute.EOF Then
                        $aResult = $oExecute.GetRows()
                        If IsArray($aResult) Then
                                Return $aResult
                        Else
                                Return SetError(3, 0, 0)
                        EndIf
                Else
                        Return SetError(2, 0, 0)
                EndIf
        Else
                Return SetError(1, 0, 0)
        EndIf
EndFunc   ;==>_MSSQL_QueryEx

评分

参与人数 1金钱 +10 收起 理由
user3000 + 10 水大, 早晨!

查看全部评分

 楼主| 发表于 2012-7-5 20:11:36 | 显示全部楼层
感谢楼上...实在抱歉现在才回复..前段时间太忙了..立刻测试..
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-15 15:00 , Processed in 0.071933 second(s), 22 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表