什么是web SQL?
我们经常在应用程序中大量处理结构化数据,html5引入了web sql database概念,它允许应用程序通过异步的javascript接口来访问sqllite数据库。但目前web sql并不在html5的规范中,而是一个单独的规范,safari、chrome、oprea浏览器支持web sql。
三个核心方法
Web SQL Database 规范中定义的三个核心方法:
transaction:这个方法允许我们根据情况控制事务提交或回滚
-
executeSql:这个方法用于执行SQL 查询
立即学习“前端免费学习笔记(深入)”;
openDatabase
语法:var db = openDatabase(name,version,displayName,estimatedSize,creationCjavascript0back);
name:数据库名字
version:数据库版本号
displayName:数据库描述
estimatedSize:数据库保存数据大小,以字节为单位
creationCallback:javascript1,非必须
transaction
transaction方法用以处理事务,当一条语句执行失败的时候,整个事务回滚。方法有三个参数:包含事务内容的一个方法、执行成功回调函数(可选)、执行失败回调函数(可选)。
db.transaction(function (context) {
context.executeSql('CREATE TABLE IF NOT EXISTS testTable (id unique, name)');
context.executeSql('INSERT INTO testTable (id, name) VALUES (0, "Byron")');
context.executeSql('INSERT INTO testTable (id, name) VALUES (1, "Casper")');
context.executeSql('INSERT INTO testTable (id, name) VALUES (2, "Frank")');
});这个例子中我们创建一个表testTable,并在表中插入三条数据,四条执行语句任何一条出错,整个事务都会回滚。
executeSql
executeSql方法用以执行SQL语句,返回结果,方法有四个参数:
- 查询javascript2
- 用以替换查询字符串中问号的参数
- 执行成功回调函数(可选)
- 执行失败回调函数(可选)
语法:
trans.executeSql(sql,[],function(){trans,data},function(trans,msg){});
示例
web SQL demo
| 用户名: | |
| 标题 | |
| 留言 |
运行结果如下: 











