这个视频我们可以先来熟悉一下 Web SQL … 使用 Web SQL 的流程大概就是这样 … 使用 openDatebase() 打开一个数据库 .. 给它返回来的那个对象起个名字 .. 再去使用这个对象的 transaction() 或者 readTransaction() 方法 … 在这两个方法里面 … 使用 executeSQL() 去执行数据库的操作 …
测试 Web SQL 我们需要使用支持它的浏览器,这里我用的是 Chrome 浏览器。
然后再启动我们在本地服务器的运行环境 .. 新建一个空白的网页 ... 把它放在 Web 服务器的发布目录里面 ... 然后在浏览器打开这个空白的网页 …
你可以在这个课程的资源包里找到这个空白的网页。
再打开浏览器的控制台 …
创建数据库
使用 openDatebase 这个方法,可以打开一个数据库 . 如果这个数据库不存在的话 … 浏览器会为我们去创建一个 …
输入 openDatabase("testapp", "1.0", "测试一下 WebSQL", 5 * 1024 * 1024)
这个函数里面有几个参数我们需要指定一下 … 第一个参数是数据库的名称 … 第二个参数是 数据库的版本 .. 接着是数据库的一个简单的描述 … 最后是数据库的大小 …
这个大小的单位是字节 .. 5 * 1024 * 1024 表示数据库最大可以是 5M … 回车 …
数据库对象
这个方法会返回一个数据库对象 .. 在控制台上会直接显示出这个对象的结构 … 它的版本是 1.0 ,在里面还有几个方法 …
changeVersion() … 可以修改数据库的版本 … 在数据库结构发生变化的时候,可以使用这个方法去更新数据库的结构 ..
transaction() … 交易 .. 这个词会经常出现在数据库系统里面 … 比如你想给数据库创建数据表 … 插入内容到数据库里面 … 更新或者删除内容等等 … 这些操作都要在这个 transaction() 里面去执行 …
readTransaction() 可以进行只读的交易 .. transaction() 可以从数据库里读取内容,也可以写入内容 . .. readTransaction() 只能去读取内容 …
比如你只想从数据库里读取内容然后把它显示出来 … 这种情况就可以在 readTransaction() 里面去操作 …
下面我们可以把 openDatebase 返回的这个对象起个名字 … var db = ...
再输入 db 回车 … 它里面的东西就是 openDatebase 返回的东西 … 这样我们可以使用 db. 的形式去做一些事情 …
比如 db.version … 可以返回数据库的版本号 ..
使用它的 transaction() 方法 … 可以输入 db.transaction() … 这个方法里面有几个参数 … 第一个参数就是执行 transaction() 时候的调用的函数 … 第二个参数是成功以后要做的事 … 第三个参数是出现错误的时候要做的事 …
db.transaction(function(tx){console.log(tx)})
我们把 transaction() 返回的 SQLTransaction 对象交给这个函数 … 叫它 tx … 然后在函数的里面 … 用一个 console.log .. 把这个 tx 对象输出到控制台上来看一下 …
你会看到 … 这个对象里面有一个 executeSQL() 方法 … 使用这个方法 … 我们可以去执行 SQL 语句 … 比如创建数据表 … 读取数据 … 插入,更新或者删除数据等等 …