window.runtime 属性window.runtime.flash.data.SQLResult
继承SQLResult Inheritance Object
运行时版本:  1.0

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

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

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

另请参见

SQLStatement.getResult()
SQLStatement.execute()
SQLStatement.next()


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

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

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

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

另请参见

data属性 
data:Array  [只读 (read-only)]
运行时版本:  1.0

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

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

lastInsertRowID属性 
lastInsertRowID:Number  [只读 (read-only)]
运行时版本:  1.0

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

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

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

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

另请参见

rowsAffected属性 
rowsAffected:Number  [只读 (read-only)]
运行时版本:  1.0

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

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

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

另请参见

构造函数详细信息
SQLResult()构造函数
function SQLResult(data:Array = null, rowsAffected:Number = 0, complete:Boolean = true, rowID:Number = 0)
运行时版本:  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 操作,则它将是该行的新的唯一标识符。