WebSQL返回对象

时间:2012-12-22 19:05:46

标签: javascript sql database

有人可以向我展示一个Web SQL选择查询,该查询将结果作为对象返回,而不是提醒或登录到控制台。

我希望集中我的选择查询,而不是在特定函数中重复选择/执行和处理结果代码。

1 个答案:

答案 0 :(得分:1)

如果我们假设该问题与Web SQL执行查询并获得结果集所需的API有关,则可以按如下所示继续操作。我没有给出太多细节,因为这个问题有点模糊,并且几乎没有显示家庭作业的证据......

  1. 在开放数据库中启动readTransaction(你确实说'查询',所以我假设“选择”):

    db.readTransaction(onStartTransaction); //使用readTransaction

  2. 减少锁定开销

    onStartTransaction函数如下所示:

    function onStartTransaction(tx) {
            tx.executeSql(sql, params, onExecuteSqlOk, onExecuteSqlFail);
        }
    

    如果你不需要,只需传递你的sql和一个[] for params。

    您的结果将返回到'onExecuteSqlOk'功能:

    function onExecuteSqlOk(tx, result) {
            //
            // tx: an SqlTransaction object
            // results: an SqlResultSet object
            //
    

    好东西在SqlResultSet对象中。

    它有一个带有'rows'属性的结构。每行包含sql select语句中指定的字段。

    var len = results.rows.length; // how many rows did we get
    var firstRow = results.rows.item(0);
    

    因此,您将获得一个“对象”作为Web Sql查询的结果。请注意,显示的api是异步的,因此您可能希望使用另一个回调函数....