|
楼主 |
发表于 2016-8-29 13:16:16
|
显示全部楼层
- /**
- * 这里给出一个自动判断并初始化数据库的方案
- */
- DemoDB.prototype.initData = function(onSuccess) {
- var db = this.getDatabase();
- // 检查表是否已存在
- var sqlCheckExists = "SELECT count(*) AS cnt FROM sqlite_master WHERE type = 'table' AND UPPER(name) in ('DEMO_REGION', 'DEMO_TEST') ";
- SqliteUtil.executeSql(db, sqlCheckExists, null, function(res) {
- if (res.rows.item(0).cnt < 2) {
- // 如果不存在则获取初始化脚本
- alert("执行一次初始化");
- require(["text!$UI/stoploss/sqlite/demoDB.sql"], function(data) {
- executeSqlFile(data);
- });
- } else {
- doSuccess();
- }
- });
- // 执行初始化脚本
- function executeSqlFile(content) {
- var sqls = content.split(";");
- SqliteUtil.executeBatch(db, sqls, null, function() {
- doSuccess();
- })
- }
- function doSuccess() {
- if ($.isFunction(onSuccess)) {
- onSuccess.call(this);
- }
- }
- };
复制代码
每次重新打开app后,都会不停的去初始化,这是什么原因 |
|