(仅限 AIR)
flash.data
public class SQLResult
继承SQLResult Inheritance Object

语言版本: ActionScript 3.0
运行时版本: AIR 1.0

SQLResult 类提供对为响应 SQL 语句(SQLStatement 实例)执行而返回的数据的访问。

SQL 语句的 SQLResult 实例是通过调用 SQLStatement.getResult() 方法或作为传递给对 SQLStatement.execute()SQLStatement.next() 的调用中指定的 Responder 实例的结果处理函数的参数进行访问的。通常,开发人员代码不直接构造 SQLResult 实例。

使用 SQLResult 对象可访问从 SELECT 语句中返回的数据行(使用 data 属性);获取 INSERT 语句的行标识符信息(使用 lastInsertRowID 属性);确定受 INSERTUPDATEDELETE 语句影响的行数(使用 rowsAffected 属性)或确定是否有尚未检索的其他 SELECT 结果行(使用 complete 属性)。

另请参见

flash.data.SQLStatement.getResult()
flash.data.SQLStatement.execute()
flash.data.SQLStatement.next()


公共属性
 属性定义方
  AIR-only complete : Boolean
[只读 (read-only)] 指示是否已返回语句执行中的所有结果数据。
SQLResult
 Inheritedconstructor : Object
对类对象或给定对象实例的构造函数的引用。
Object
  AIR-only data : Array
[只读 (read-only)] 由于执行语句而返回的数据(尤其是在执行 SQL SELECT 语句时)。
SQLResult
  AIR-only lastInsertRowID : Number
[只读 (read-only)] 上次生成的行标识符(由 SQL INSERT 语句生成)。
SQLResult
 Inheritedprototype : Object
[静态] 对类或函数对象的原型对象的引用。
Object
  AIR-only rowsAffected : Number
[只读 (read-only)] 指示受此操作影响的行数。
SQLResult
公共方法
 方法定义方
  
AIR-only SQLResult(data:Array = null, rowsAffected:Number = 0, complete:Boolean = true, rowID:Number = 0)
创建 SQLResult 实例。
SQLResult
 Inherited
指示对象是否已经定义了指定的属性。
Object
 Inherited
指示 Object 类的实例是否在指定为参数的对象的原型链中。
Object
 Inherited
指示指定的属性是否存在、是否可枚举。
Object
 Inherited
设置循环操作动态属性的可用性。
Object
 Inherited
返回指定对象的字符串表示形式。
Object
 Inherited
返回指定对象的原始值。
Object
属性详细信息
AIR-only complete属性
complete:Boolean  [只读 (read-only)]

语言版本: ActionScript 3.0
运行时版本: AIR 1.0

指示是否已返回语句执行中的所有结果数据。

如果某一语句返回一行或多行,则此属性指示是否已返回所有行。在使用一个 prefetch 参数值调用 SQLStatement 对象的 execute() 方法时,SQLResult 对象的 data 属性中只返回指定行数的生成数据。对 SQLStatement.next() 的后续调用将导致其他数据变为可用。此属性用于确定已返回最终结果的时间。

请注意,由于在执行时行数是未知的,因此,数据库光标必须移出最后一行以后,才会认为语句执行完成。如果使用一个 prefetch 参数调用 SQLStatement.execute() 方法,则只有当请求的行数至少比结果集中的行数多一行时,生成的 SQLResult 实例的 complete 属性才会为 true



实现
    public function get complete():Boolean

另请参见

AIR-only data属性 
data:Array  [只读 (read-only)]

语言版本: ActionScript 3.0
运行时版本: AIR 1.0

由于执行语句而返回的数据(尤其是在执行 SQL SELECT 语句时)。

如果某一语句返回一行或多行,则此属性是一个包含多个对象的数组,这些对象的属性名称对应于结果数据集的列名称。如果某一语句不返回任何数据,则此属性为 null



实现
    public function get data():Array
AIR-only lastInsertRowID属性 
lastInsertRowID:Number  [只读 (read-only)]

语言版本: ActionScript 3.0
运行时版本: AIR 1.0

上次生成的行标识符(由 SQL INSERT 语句生成)。

如果执行的语句不是 INSERT 语句,则该值为 0。

行标识符用于唯一标识数据库表中的行。该值通常由数据库生成。

有关主键和生成的行标识符的详细信息,请参阅附录“本地数据库中的 SQL 支持”中的“创建表”和“表达式”部分。



实现
    public function get lastInsertRowID():Number

另请参见

AIR-only rowsAffected属性 
rowsAffected:Number  [只读 (read-only)]

语言版本: ActionScript 3.0
运行时版本: AIR 1.0

指示受此操作影响的行数。只有直接由 INSERTUPDATEDELETE 语句指定的更改才计算在内。

由触发器导致的辅助更改不计算在内。使用 SQLConnection.totalChanges 属性可得到总更改数(包括触发器引发的更改)。

请注意,当相关的 SQL 操作为不带 WHERE 子句的 DELETE 语句时(即该语句删除表中的所有行),rowsAffected 属性始终为 0,而不管删除了多少行。如果您需要知道删除的行数,则可以包括 WHERE 子句 WHERE 1 = 1,在这种情况下,将删除所有行,并且 rowsAffected 属性会精确反映已删除的行数。不过,根据删除的行数不同,执行此操作可能会对语句的性能产生负面影响。



实现
    public function get rowsAffected():Number

另请参见

构造函数详细信息
AIR-only SQLResult()构造函数
public function SQLResult(data:Array = null, rowsAffected:Number = 0, complete:Boolean = true, rowID:Number = 0)

语言版本: ActionScript 3.0
运行时版本: AIR 1.0

创建 SQLResult 实例。通常,开发人员代码不直接调用 SQLResult 构造函数。若要检索与特定 SQLStatement 实例相关联的 SQLResult 实例,请调用该实例的 getResult() 方法。如果为 execute()next() 方法调用指定了 Responder 实例,则还会以参数形式向结果处理函数传递 SQLResult 实例。

参数
data:Array (default = null) — 从语句的执行返回的行的数组。如果语句不返回任何行,则此值应为 null。
 
rowsAffected:Number (default = 0) — 指示所执行的语句影响的行数。
 
complete:Boolean (default = true) — 指示是否有可以获取的其他行或是否已返回所有数据。
 
rowID:Number (default = 0) — 如果语句为 SQL INSERT 操作,则它将是该行的新的唯一标识符。