【小编推荐】db模块sqlite的使用

2016-03-19   |   发布者:梁国芳   |   查看:3320次

app开发
 

概述

db模块封装了手机常用数据库sqlite的增删改查语句,可实现数据的本地存储,极大的简化了数据持久化问题

openDatabase
 

打开数据库,若数据库不存在则创建数据库。

数据库打开后即使当前页面关闭了,数据库也不会关闭,除非手动调用closeDatabase()方法关闭,所以一旦打开在其它页面就可以直接使用。

若数据库放在widget目录下,那么需要先把数据库拷贝到fs://对应目录下面再使用

openDatabase({params}, callback(ret, err))

params

name:

path:

callback(ret, err)

ret:

{     status:true        //布尔类型;操作成功状态值,true|false } 

err:

{     msg:""          //字符串类型;错误描述 } 

示例代码

var db = api.require('db'); db.openDatabase({     name: 'test' }, function(ret, err){     if(ret.status){         api.alert({msg:'数据库打开成功'});     }else{         api.alert({msg:err.msg});     } }); 

可用性

iOS系统,Android系统,PC模拟器

可提供的1.0.0及更高版本

closeDatabase
 

关闭数据库

closeDatabase({params}, callback(ret, err))

params

name:

callback(ret, err)

ret:

{     status:true           //布尔类型;操作成功状态值,true|false } 

err:

{     msg:""               //字符串类型;错误描述 } 

示例代码

var db = api.require('db'); db.closeDatabase({     name:'test' }, function(ret, err){     if(ret.status){         api.alert({msg:'关闭数据库成功'});     }else{         api.alert({msg:'error'});     } }); 

可用性

iOS系统,Android系统,PC模拟器

可提供的1.0.0及更高版本

transaction
 

执行事务操作语句

transaction({params}, callback(ret, err))

params

name:

operation:

callback(ret, err)

ret:

{     status:true           //布尔类型;操作成功状态值,true|false } 

err:

{     msg:""                //字符串类型;错误描述 } 

示例代码

var db = api.require('db'); db.transaction({     name: 'test',     operation: 'begin' }, function(ret, err){     if(ret.status){         api.alert({msg:'事务操作成功'});     }else{         api.alert({msg:err.msg});     } }); 

可用性

iOS系统,Android系统,PC模拟器

可提供的1.0.0及更高版本

executeSql
 

执行sql

executeSql({params}, callback(ret, err))

params

name:

sql:

callback(ret, err)

ret:

{     status:true           //布尔类型;操作成功状态值,true|false } 

err:

{     msg:""                //字符串类型;错误描述 } 

示例代码

var db = api.require('db'); var sql = 'CREATE TABLE Persons(Id_P int, LastName varchar(255), FirstName varchar(255), Address varchar(255), City varchar(255))'; db.executeSql({     name: 'test',     sql: sql }, function(ret, err){     if(ret.status){         api.alert({msg:'执行SQL成功'});     }else{         api.alert({msg:err.msg});     } }); 

可用性

iOS系统,Android系统,PC模拟器

可提供的1.0.0及更高版本

selectSql
 

查询sql

selectSql({params}, callback(ret, err))

params

name:

sql:

callback(ret, err)

ret:

{     status:true,     //布尔类型;操作成功状态值,true|false     data:[]          //数组类型;查询结果数据 } 

err:

{     msg:""           //字符串类型;错误描述 } 

示例代码

var db = api.require('db'); var sql = 'select * FROM Persons'; db.selectSql({     name:'test',     sql: sql }, function(ret, err){     if(ret.status){         var data = ret.data;     }else{     } }); 

可用性

iOS系统,Android系统,PC模拟器

可提供的1.0.0及更高版本