繁体   English   中英

Ionic SQLite-检查数据库是否存在

[英]Ionic SQLite — check if database exists

我正在尝试离子框架。 我需要在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中可以看到的合理解释,我们将不胜感激。

使用openDatabase命令而不是create。 如果不存在,这将创建数据库。

尝试关注本文

https://www.thepolyglotdeveloper.com/2015/12/use-sqlite-in-ionic-2-instead-of-local-storage/

我也建议在$ ionicPlatform.ready的开头使用此命令,并将其保存在某些全局变量中,以便您可以在应用程序中的任何时间访问它。 我一直在使用带离子v1的sqlite插件。 上面的链接将帮助您将其与ionic v2集成。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM