【发布时间】:2017-10-21 14:28:13
【问题描述】:
我正在尝试 Ionic 框架。我需要在 Android SQLite 中存储一些数据。所以,我想打开或创建一个数据库,如果数据库之前不存在,用一些数据填充它。
这里说我使用create 方法,即使数据库已经存在:
https://ionicframework.com/docs/native/sqlite/
于是我写了一个类:
export class Database {
private sqlite: SQLite;
private database: SQLiteObject = null;
constructor() {
this.sqlite = new SQLite();
}
private open_db() {
return this.sqlite.create({
name: 'data.db',
location: 'default'
})
.then((db: SQLiteObject) => {
this.database = db;
return db.sqlBatch([...some sql inserts and create tables...]);
});
});
public all() {
return this.open_db().then(() => this.database.executeSql("SELECT ...something...", []));
}
现在,我如何仅在数据库实际创建而不是打开时才调用 db.sqlBatch? 是的,这段代码在没有合理解释的情况下抛出随机异常,可以在 logcat 中看到,任何建议都将不胜感激。
【问题讨论】:
标签: android database sqlite cordova ionic-framework