html操作sqlite,JavaScript操作sqlite

本文介绍了HTML5中内置的SQLite数据库的API使用方法,包括openDatabase、transaction和executeSql,以及为何使用事务处理,并通过实例展示了如何创建数据库、执行SQL操作。还提到了IndexedDB作为另一种数据库的对比和区别。
摘要由CSDN通过智能技术生成

在html5中内置了两种数据库,一种为SQLite(也是WebSQL),另一种为indexedDB。

sqlite的api参考:http://www.phonegapcn.com/docs/zh/cn/storage.html

支持情况:

SQLite 数据库可以在最新版的 Safari, Chrome 和 Opera 浏览器中工作。

核心方法:

1、openDatabase:这个方法使用现有的数据库或者新建的数据库创建一个数据库对象。

2、transaction:这个方法让我们能够控制一个事务,以及基于这种情况执行提交或者回滚。

3、executeSql:这个方法用于执行实际的 SQL 查询。

创建数据库对象

var db = openDatabase("myDB","1.0","test db",1024*100);

说明:

1. 该方法返回的是创建的数据库的对象,如果该数据库不存在才会创建这个数据库。

2. 第一个参数:数据库的名称

第二个参数:数据库的版本号

第三个参数:数据库的描述

第四个参数:数据库的大小

使用数据库

db.transaction(function(tx){

tx.executeSql("");

})

说明:

1.使用事务处理的原因:可以防止对数据库进行访问、执行有关操作时受到外界的干扰。在web上可能同时有很多人对网页进行访问,如果在访问数据库的过程中,正在操作的数据库被其他用户修改了,会引起很多意想不到的结果,因此使用事务来达到操作完成之前阻止其他用户对数据库的访问。

2.function(tx):是一个回调函数

3.tx.executeSql():该方法是用来执行sql语句的。

transaction.executeSql(sqlquery,[],dataHandler,errorHandler)

第一个参数:是数据库操作的sql语句

第二个参数:sql语句中所使用的参数的数组

第三个参数:成功执行sql语句后调用的回调函数,

function dataHandler(transaction,results)

第四个参数:执行sql语句时,如果出错调用的回调函数,

function errorHandler(transaction,errmsg)

例:

//建表

var db = openDatabase('mydb', '1.0', 'Test DB', 2 * 1024 * 1024);

db.transaction(function (tx) {

tx.executeSql('CREATE TABLE IF NOT EXISTS WIN (id unique, name)');

});

//插入数据

db.transaction(function (tx) {

tx.executeSql('INSERT INTO WIN (id, name) VALUES (1, "winty")');

tx.executeSql('INSERT INTO WIN (id, name) VALUES (2, "LuckyWinty")');

});

//查找数据

db.transaction(function (tx) {

tx.executeSql('SELECT * FROM WIN', [], function (tx, results) {

var len = results.rows.length, i;

for (i = 0; i < len; i++){

alert(results.rows.item(i).name );

}

}, null);

});

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值