2014-12-22 47 views
0

我想基于下面的SQL Select语句使用我的SQLite数据库中的AthleticsURL字段的值填充StageWebview.loadURL的值。当我跟踪变量在sqlAthResult功能,我得到:Flex应用程序Sqlite选择语句返回[对象对象]

结果:[对象的对象]

输出:空

(空)

如何退回AthleticsURL值有什么建议? AthleticsURL是一个String

private function athleticsData():void 
{ 
stmts.sqlConnection = this.isDbConnected(conn); 
stmts.text = "SELECT AthleticsURL FROM DistrictSchools where AthleticsFavs == 1"; 
stmts.addEventListener(SQLErrorEvent.ERROR, sqlError); 
stmts.addEventListener(SQLEvent.RESULT, sqlAthResult); 
stmts.execute(); 
trace("Row requested @athleticsData"); 
} 

public function sqlAthResult(res:SQLEvent):void{ 
var result:Array = stmts.getResult().data; 
var output:String = result.AthleticsURL; 
trace("result:" +result); 
trace("output: " +output); 
trace(ObjectUtil.toString(result.data));  
} 
+0

什么类是'stmts'? – Brian

+0

另外,如果你跟踪(结果[“AthleticsURL”]),你会得到什么? – Brian

回答

0

我想出了一个解决方案,并希望在这里发表。 var网站从我的SQLite表中返回http://字符串。

var website:String = AthList[0].AthleticsURL; 
trace("website: " + website); 
webView.stage = this.stage; 
webView.viewPort = new Rectangle(0, navigator.actionBar.height*scaleFactor, FlexGlobals.topLevelApplication.width*scaleFactor,(FlexGlobals.topLevelApplication.height*.9-navigator.actionBar.height)*scaleFactor); 
      webView.loadURL(website); 
0

尝试之后,它会给你造成:

sqlConnectionSync = new SQLConnection();//create a connection object 
sqlConnectionSync.open(file, SQLMode.READ); 

private function athleticsData():void 
{ 
var stmts:SQLStatement = new SQLStatement(); //create the insert statement 
stmts.sqlConnection = sqlConnectionSync; //set the connection 
stmts.addEventListener(SQLEvent.RESULT, sendQueryResult); 
stmts.text = "SELECT AthleticsURL FROM DistrictSchools where AthleticsFavs == 1"; 
stmts.execute(); 
} 

public function sqlAthResult(res:SQLEvent):void 
{ 
    var res:SQLResult = SQLStatement(event.currentTarget).getResult(); 
    var result: ArrayCollection = new ArrayCollection(res.data); 
    var output:String = result.AthleticsURL; 
    trace("result:" +result); 
    trace("output: " +output); 
    trace(ObjectUtil.toString(result.data));  
}