前言
Web SQL 数据库 API 并不是 HTML5 规范的一部分,但是它是一个独立的规范,引入了一组使用 SQL 操作客户端数据库的 APIs。Web SQL 数据库可以在最新版的 Safari, Chrome 和 Opera 浏览器中工作。
核心方法以下是规范中定义的三个核心方法:
- openDatabase:这个方法使用现有的数据库或者新建的数据库创建一个数据库对象。
- transaction:这个方法让我们能够控制一个事务,以及基于这种情况执行提交或者回滚。
- executeSql:这个方法用于执行实际的 SQL 查询。
通过 openDatabase() 方法来打开已存在的数据库,如果数据库不存在,则会创建一个新的数据库:
// 新建 demo 数据库
var DB = openDatabase('demo','1.0','演示',2 * 1024 * 1024)
openDatabase() 方法对应的五个参数说明:
- 数据库名称
- 版本号
- 描述文本
- 数据库大小
- 创建回调
第五个参数,创建回调会在创建数据库后被调用。
创建数据库表通过 database.transaction() 函数进行创建:
// 创建数据库 demo
var DB = openDatabase('demo','1.0','演示',2 * 1024 * 1024)
// 创建数据库表 DEMO
DB.transaction(function(TX){
TX.executeSql('CREATE TABLE IF NOT EXISTS DEMO (id unique, log)')
})
新建一个 NewDB表,并插入两条记录:
// 创建数据库
var DB = openDatabase('demo','1.0','演示',2 * 1024 * 1024)
// 创建数据库表
DB.transaction(function (tx) {
tx.executeSql('CREATE TABLE IF NOT EXISTS NewDB (id unique, log)');
tx.executeSql('INSERT INTO NewDB (id, log) VALUES (1, "第一条")');
tx.executeSql('INSERT INTO NewDB (id, log) VALUES (2, "第二条")');
});
当然,也可以动态添加。