Skip to content

Commit

Permalink
fix: 优化查询速度
Browse files Browse the repository at this point in the history
  • Loading branch information
qwertyyb committed Jul 6, 2022
1 parent ede5b06 commit f5e5c45
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 4 deletions.
2 changes: 1 addition & 1 deletion Fire.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@
/* Begin PBXFileReference section */
4500AC612869F8CC006F3FCC /* PunctutionPane.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PunctutionPane.swift; sourceTree = "<group>"; };
4500AC63286F2B42006F3FCC /* UserDictPane.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserDictPane.swift; sourceTree = "<group>"; };
4500AC67287036CB006F3FCC /* DictManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DictManager.swift; sourceTree = "<group>"; };
4500AC67287036CB006F3FCC /* DictManager.swift */ = {isa = PBXFileReference; indentWidth = 4; lastKnownFileType = sourcecode.swift; path = DictManager.swift; sourceTree = "<group>"; };
450B7D9926A2847D00808A4D /* ApplicationPane.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ApplicationPane.swift; sourceTree = "<group>"; };
451E6044232E227B007B0463 /* Fire.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Fire.app; sourceTree = BUILT_PRODUCTS_DIR; };
451E6047232E227B007B0463 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
Expand Down
13 changes: 10 additions & 3 deletions Fire/DictManager.swift
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ class DictManager {
text,
type, min(query) as query
from wb_py_dict
where query like :query \(
where query >= :queryMin and query <= :queryMax \(
codeMode == .wubi ? "and type = 'wb'"
: codeMode == .pinyin ? "and type = 'py'" : "")
group by text
Expand Down Expand Up @@ -118,6 +118,8 @@ class DictManager {
return ([], false)
}
NSLog("get local candidate, origin: \(query), query: ", query)
let queryMin = query;
let queryMax = query + "zzzz";
var candidates: [Candidate] = []
sqlite3_reset(queryStatement)
sqlite3_clear_bindings(queryStatement)
Expand All @@ -127,8 +129,13 @@ class DictManager {
SQLITE_TRANSIENT
)
sqlite3_bind_text(queryStatement,
sqlite3_bind_parameter_index(queryStatement, ":query"),
"\(query)%", -1,
sqlite3_bind_parameter_index(queryStatement, ":queryMin"),
queryMin, -1,
SQLITE_TRANSIENT
)
sqlite3_bind_text(queryStatement,
sqlite3_bind_parameter_index(queryStatement, ":queryMax"),
queryMax, -1,
SQLITE_TRANSIENT
)
sqlite3_bind_int(queryStatement,
Expand Down

0 comments on commit f5e5c45

Please sign in to comment.