html数据库sql数据库,html5 当地数据库的sql操作

//********************************

//****Html5 管理本地数据库脚本****

//********************************

var LOCAL = window.LOCAL || {}, win = window;

LOCAL.LocalDB = function(options){

this.opts = $.extend({}, LOCAL.defaults, options);

console.log(this.opts);

}

LOCAL.LocalDB.prototype = {

//打开数据库

openDB: function() {

var self = this, options = self.opts;

try{

if(!options.dbObj) {

options.dbObj = win.openDatabase(options.dbName, options.dbVersion,

options.dbDescription, options.dbMaxSize);

console.log(options.dbName + '数据库创建成功...');

}

}catch(e){

console.log("打开数据库出现未知错误: " + e);

options.dbObj = null;

};

},

//连接数据库

getDBConn: function() {

this.openDB();

},

//默认执行sql方式

executeSqlDefault: function(sqlStr, params, successHandler, errorHandler) {

var self = this, options = self.opts;

this.getDBConn();

options.dbObj.transaction(function(tx){

tx.executeSql(sqlStr, params, successHandler, errorHandler);

}, null, null);

},

//自定义sql函数执行

executeSqlTrans: function(fun, successHandler, errorHandler) {

var self = this, options = self.opts;

this.getDBConn();

options.dbObj.transaction(fun, successHandler, errorHandler);

},

//修改数据库版本信息

changeDBVersion: function(newVersion) {

var self = this, options = self.opts;

this.getDBConn();

options.dbObj.changeVersion(options.dbVersion, newVersion, null, errorFun, null);

},

//判断某表是否存在:表名、存在回调函数、不存在回调函数

isExitTable: function(tableName, exitFun, notExitFun) {

var self = this, options = self.opts,

sql = "select * from sqlite_master where type='table' and name = ?";

this.getDBConn();

options.dbObj.transaction(function(tx) {

tx.executeSql(sql, [tableName], function(transaction, result) {

if (result.rows.length > 0 && exitFun) {

exitFun.call();

} else if (result.rows.length <= 0 && notExitFun) {

notExitFun.call();

}

}, null);

});

},

//删除表数据:表名,删除成功回调函数

delTableData: function(tableName, callBackFun) {

var self = this, options = self.opts,

sql = 'delete form ?'

this.getDBConn();

options.dbObj.transaction(function(tx) {

tx.executeSql(sql, [tableName], callBackFun, null);

});

},

//删除表,删除成功回调函数

dropTable: function(tableName, callBackFun) {

var self = this, options = self.opts,

sql = 'drop table ?'

this.getDBConn();

options.dbObj.transaction(function(tx) {

tx.executeSql(sql, [tableName], callBackFun, null);

});

}

};

LOCAL.defaults = {

dbName: 'book',//数据库名

dbVersion: '1.0',//版本信息

dbDescription: 'just test',//描述

dbMaxSize: 1024*1024*1024,//最大值

dbObj: null

}

基于jquery

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值