离子3:如何使用存储(Sqlite)插件

时间:2017-05-09 05:10:45

标签: sqlite angular ionic2 storage ionic3

我已经创建了登录屏幕和主屏幕我有一个对象有三个数据,必须使用sqlite存储如何做到这一点我不知道

{
      "userId": "",
      "loginId": "",
      "passwd": ""
    }

我创建了一个我的sqlite商店代码

的提供程序
export class SqlStorage {

  constructor(public http: Http,private sqlite: SQLite) {
    console.log('Hello SqlStorage Provider');

    this.sqlite.create({
      name: 'data.db',
      location: 'default'
    })
    .then((db: SQLiteObject) => {
      db.executeSql('create table kmartIndia(name VARCHAR(32))', {})
      .then((db) => { 
        console.log('Executed SQL');
      })
      .catch((e) => {
        console.log(e)
      });
    })
    .catch((e) => {
      console.log(e)
    });
  }

  setValue(){}

  getValue(){}

  removeValue(){}
}
  

我不知道如何让它发挥作用

     

如何创建表以及如何设置,获取和删除值我不太熟悉这个任何帮助。

1 个答案:

答案 0 :(得分:0)

经过一番挖掘后,我发现了如何做到这一点。

似乎"创造" method用于创建和打开数据库。

在你的setValue()中执行:

this.sqlite.create({
  name: 'data.db',
  location: 'default'
}).then((db: SQLiteObject) => {
  db.executeSql("insert into kmartIndia(name) values ('Mohan')", {}).then(() => yourVariable = 'Executed SQL').catch(e => yourVariable = e);
}).catch(e => console.log(e));

并且,从表中获取数据:

this.sqlite.create(
  {name: 'data.db', location: 'default'}
  ).then(
    (db: SQLiteObject) => {
      db.executeSql('select * from kmartIndia', {}).then( 
        (data) => {
          for(var i =0; i< data.rows.length;i++){
            yourVariable += data.rows.item(i).name
          }
        } 
      )
    }
  );

(我用+ =分配了值,但它只是和示例:))