欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Ionic2调用本地SQlite实例

程序员文章站 2023-01-19 13:12:39
普通的app用ionic内置的storage存储键值对的方式可以满足日常的使用,但是有时候遇到一些奇怪的需求。比如说有个网友留言说做一个离线版的app,怎样调用本地sqli...

普通的app用ionic内置的storage存储键值对的方式可以满足日常的使用,但是有时候遇到一些奇怪的需求。比如说有个网友留言说做一个离线版的app,怎样调用本地sqlite执行sql语句。问题描述清楚直接上代码。

需要说明的是sqlite是手机内置的数据库存储方式,在ionic2中需要安装相应的插件和安装包。过程很简单

第一步

安装插件、并加入项目

$ ionic plugin add cordova-sqlite-storage
$ npm install --save @ionic-native/sqlite

第二步

把服务加入到src/app/app.moudle.ts

...
import { sqlite } from '@ionic-native/sqlite';
...
providers: [
 ...
 sqlite
]
...

第三步

使用数据库,常规来说,这一步应该封装成公共服务或者工具类。类中是具体的创建数据库,调用数据库,crud等方法。这里只是说明原理,直接调用

import { component } from '@angular/core';
import { sqlite, sqliteobject } from '@ionic-native/sqlite';
@component({
 selector: 'page-hello-ionic',
 templateurl: 'hello-ionic.html'
})
export class helloionicpage {
 constructor(
       private sqlite: sqlite) {

 }
 database :sqliteobject;
 ngoninit(){
  this.initdb();
 }
 initdb(){
  this.sqlite.create({
   name: 'data.db',
   location: 'default'
  })
  .then((db: sqliteobject) => {
  db.executesql('create table t_log(name varchar(32))', {})//建表
   .then(() => console.log('executed sql'))
   .catch(e => console.log(e));

  this.database = db;
  db.executesql("insert into t_log values('123')",{});//插入数据
  })
  .catch(e => console.log(e));

 }
//查询
query() {
  let results = this.database.executesql("select * from t_log",{});
  alert(data.rows.length);
  alert(data.rows.item(0).name);
  })
 }
}

最后一步

这一步一定要生成app安装到手机才能得到结果,毕竟是调用手机内置的sqlite。
ionic build android

用上面的命令构建app并安装到手机看看效果吧

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。