2
我使用Sqlite作为嵌入式数据库,使用Flex + AIR中的拼写检查功能对编辑器进行了devloping。 在数据库中我有一个表格。该表包含词汇。我写了代码来搜索表中的单词。所有这些我都使用了同步方法。这会在搜索时暂停我的应用程序。 我想使用异步方法来停止应用程序暂停。Flex AIR Sqlite作为嵌入式数据库
的搜索词的代码如下:
public function searchInDictionary(word:String):Boolean
{
if(word == "")
return true;
connection= new SQLConnection();
var query:SQLStatement = new SQLStatement();
query.sqlConnection = connection;
query.text = 'SELECT id FROM tbl_'+ CommonLanguageCode +' WHERE word LIKE "'+word+'"';
try
{
connection.open(dbfile,SQLMode.READ);
}
catch(ex:Error)
{}
if(!connection.connected)
connection.open(dbfile);
query.execute();
var result:SQLResult = query.getResult();
if(result.data == null)
{
return false;
}
else
{
var numRows:uint = result.data.length;
var id:String;
if(numRows>0)
return true;
return false;
}
return false;
}
如果该函数返回false(字未找到),然后我必须在函数调用,以红色下划线这个词。
如果我出错了,请给我建议。正如我使用同步方法&它需要几毫秒来搜索一个字。如果我正在写一段话,那么它会让我的申请呆滞。
是否有其他方式可以存储文字&搜索更快。如果是的话请等我知道。
在此先感谢。