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

1.执行

var db = api.require('db');
db.executeSql({
name: 'db_name',
sql: 'CREATE TABLE Persons(Id_P int, LastName varchar(255), FirstName varchar(255), Address varchar(255), City varchar(255))'
}, function(ret, err) {
if (ret.status) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});

执行案例

function dbExecuteSql(sqlite_sql, callback) {
sqlite_db = api.require('db');
sqlite_db.executeSql({
name : BASE_FS_SQDB_NAME,
sql : sqlite_sql
}, function(ret, err) {
if (ret.status) {
callback(true);
} else {
api.toast({
msg : '对不起,获取会话信息失败,为您恢复数据,请稍后'
});
openDb(function(is_true) {
if (is_true) {
callback(true);
} else {
callback(false);
}
});
}
});
}

2.查询

var db = api.require('db');
db.selectSql({
name: 'db_name',
sql: 'SELECT * FROM Persons'
}, function(ret, err) {
if (ret.status) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});

查询案例

function dbSelectSql(sqlite_sql, callback) {
sqlite_db = api.require('db');
dbOpenDb(function(is_true) {
if (is_true) {
sqlite_db.selectSql({
name : BASE_FS_SQDB_NAME,
sql : sqlite_sql
}, function(ret, err) {
if (ret.status) {
// alert(JSON.stringify(ret.data));
callback(ret.data);
} else {
api.toast({
msg : '数据查询失败:' + err.msg
});
openDb(function(is_true) {
if (is_true) {
callback(true);
} else {
callback(false);
}
});
}
});
} else {
callback(false);
}
});
}

3.打开数据库,如不存在则创建

var db = api.require('db');
db.openDatabase({
name: 'db_name'
}, function(ret, err) {
if (ret.status) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});

创建案例

function dbOpenDb(callback) {
isExisDb(function(is_true) {
if (is_true) {
sqlite_db = api.require('db');
//alert(dbname);
sqlite_db.openDatabase({
name : BASE_FS_SQDB_NAME,
path : BASE_FS_SQDB_PATH + BASE_FS_SQDB_NAME + ".db"
}, function(ret, err) {
if (ret.status) {
callback(true);
} else {
api.toast({
msg : '对不起,获取会话信息失败,为您恢复数据,请稍后'
});
openDb(function(is_true) {
if (is_true) {
callback(true);
} else {
callback(false);
}
});
}
});
}
});
}

最新文章

  1. Swift小练习-引导页
  2. httpModules与Http模块
  3. vim安装YouCompleteMe 插件
  4. ERP
  5. 7Zip 来备份重要文件(夹)
  6. js动态生成按钮,页面用DIV简单布局2
  7. 问题.NET访问 IIS 元数据库失败。
  8. Qt动画与Qt坐标小记
  9. php支持大文件上传
  10. python基础的学习
  11. Python-css高级
  12. unzip解压带密码的压缩包
  13. sql乘法函数实现方式
  14. mysql触发器的使用 想让b字段在更新的时候把旧数据保存到a字段中
  15. JsonCpp使用方法详解
  16. NetworkX 使用(三)
  17. Segments CodeForces 909B (找规律)
  18. html---规范、细节积累-01
  19. Android学习系列--App列表之拖拽ListView(上)
  20. css 浮动说明

热门文章

  1. es6 --- 功能
  2. Swift学习笔记(3):基本运算符
  3. iview中 ...用法
  4. rem自适应布局-移动端自适应必备:flexible.js
  5. iOS开发——导航栏的一些小设置
  6. JavaScript进阶之原型链
  7. Android项目执行时报错NoclassDefFoundError
  8. bzoj2843极地旅行社题解
  9. oracle之ROWNUM的查询应用
  10. 之前搭建的jenkins的一些笔记