系列文章导航
  1. Adobe AIR中使用Flex连接Sqlite数据库(1)(创建数据库和表)
  2. Adobe AIR中使用Flex连接Sqlite数据库(2)(添加,删除,修改以及语句参数)
  3. Adobe AIR中使用Flex连接Sqlite数据库(3)(查询)
  4. Adobe AIR中使用Flex连接Sqlite数据库(4)(事务)
  5. Flex,Fms3相关文章索引
  6. 免费美女视频聊天,多人视频会议功能加强版本(Fms3和Flex开发(附源码))


本章主要总结表的查询

1.查询
同步版本:
private function query():void
{
 var stmt:SQLStatement = new SQLStatement();
 stmt.sqlConnection = con;
     stmt.text = "select empId,firstName,lastName,salary from emp";
 stmt.execute(); 
 
 var result:SQLResult = stmt.getResult();
 
 if ( result.data!=null )
 {
  var numResults:int =result.data.length;
    
  for (var i:int = 0; i < numResults; i++)
     {
         var row:Object = result.data[i];
         var output:String = "empId: " + row.empId;
         output += "; firstName: " + row.firstName;
         output += "; lastName: " + row.lastName;
         output += "; salary: " + row.salary; 
          
         Alert.show(output); 
     }
  }
}
代码说明:
getResult ()方法:执行结果的SQLResult对象的访问
SQLResult的data属性:执行语句而返回的数据。如果某一语句不返回任何数据,则此属性为 null。这就是本代码需要判断是否为空的目的。


2.查询部分结果
默认情况下,执行 SELECT 语句会一次检索结果集的所有行,有时我们需要查询第1行怎么办?
查询第1行的异步版本实例代码如下:
private var responder:Responder;
private var stmt:SQLStatement;
private function querytop1():void
{
 stmt = new SQLStatement();
 stmt.sqlConnection = con;
 stmt.text = "select empId,firstName,lastName,salary from emp where firstName=:firstName";
     stmt.parameters[":firstName"]="f";
     responder= new Responder(resultHandler, errorHandler);
 stmt.execute(1,responder); 
}

private function resultHandler(result:SQLResult):void
{
 if ( result.data!=null )
 {
  var numResults:int =result.data.length;
    
  for (var i:int = 0; i < numResults; i++)
     {
         var row:Object = result.data[i];
         var output:String = "empId: " + row.empId;
         output += "; firstName: " + row.firstName;
         output += "; lastName: " + row.lastName;
         output += "; salary: " + row.salary; 
          
         Alert.show(output); 
     }
  }
}

private function errorHandler(error:SQLError):void
{
 Alert.show(error.message);
 Alert.show(error.details);
}
代码说明:
execute () 方法参数说明:
第1个参数:此值指示该语句一次返回的行数。默认值为 -1,指示一次返回所有结果行,
第2个参数:一个Responder对象,指定操作成功或失败时要调用的方法。
实际在本例中,也可以不用Responder对象,而用事件侦听器执行SQLStatement,以确定语句的执行何时完成或失败
stmt.addEventListener(SQLEvent.RESULT,resultHandler);
stmt.addEventListener(SQLErrorEvent.ERROR,errorHandler);
具体代码实现可以参照以前的文章

 


3.代码下载
https://files.cnblogs.com/aierong/Air_Test_SQLite3.rar

 

收藏与分享

收藏到QQ书签 Adobe AIR中使用Flex连接Sqlite数据库(3)(查询) 添加到百度搜藏 Adobe AIR中使用Flex连接Sqlite数据库(3)(查询)添加到雅虎收藏 Adobe AIR中使用Flex连接Sqlite数据库(3)(查询) Adobe AIR中使用Flex连接Sqlite数据库(3)(查询) Adobe AIR中使用Flex连接Sqlite数据库(3)(查询)

RSS订阅我 什么是RSS?

Adobe AIR中使用Flex连接Sqlite数据库(3)(查询)   Adobe AIR中使用Flex连接Sqlite数据库(3)(查询)   Adobe AIR中使用Flex连接Sqlite数据库(3)(查询)
Adobe AIR中使用Flex连接Sqlite数据库(3)(查询)   Adobe AIR中使用Flex连接Sqlite数据库(3)(查询)   Adobe AIR中使用Flex连接Sqlite数据库(3)(查询)   Adobe AIR中使用Flex连接Sqlite数据库(3)(查询)
Adobe AIR中使用Flex连接Sqlite数据库(3)(查询)   Adobe AIR中使用Flex连接Sqlite数据库(3)(查询)   Adobe AIR中使用Flex连接Sqlite数据库(3)(查询)
Adobe AIR中使用Flex连接Sqlite数据库(3)(查询)   Adobe AIR中使用Flex连接Sqlite数据库(3)(查询)   Adobe AIR中使用Flex连接Sqlite数据库(3)(查询)

东莞.net俱乐部

Adobe AIR中使用Flex连接Sqlite数据库(3)(查询) 欢迎您的加入

相关文章: