Phonegap Sqlite真空吸尘器

时间:2013-06-04 05:04:57

标签: sqlite cordova vacuum

我们有一个支持脱机功能的平板电脑应用,使用VSNomad(通过Phonegap)和Sqlite本地数据库。我注意到的一件事是,当我们从iPad上删除表格和删除表格(在iPad上执行“应用程序重置”)时,它并不反映该空间已被打开。

我遇到了Sqlite的“VACUUM”命令但是我不确定如何将这个用于我们的实现。当我尝试运行它时,我收到一条错误消息,指出无法在事务中运行。

以下是我们如何实施的示例 http://docs.phonegap.com/en/2.7.0/cordova_storage_storage.md.html#Storage

        app.shared.db().transaction(function (tx) {
            tx.executeSql('VACUUM', [], function (tx, results) {
                alert('done');
            }, function (tx, error) {
                alert('error');
                alert(error.message);
            });
        });

是否可以像这样运行真空?

1 个答案:

答案 0 :(得分:0)

我实现了你的代码,我得到了:

E/SQLiteQuery(18724): exception: not an error; query: VACUUM

进一步搜索我发现连接到数据库时无法给出vacuum sql命令,因此无法从数据库打开并从javascript或phonegap中进行事务处理。只能从命令行给出。

但必须有另一种方式......(看着那个)。

目前我对数据库管理有一些建议: