zoukankan      html  css  js  c++  java
  • 客户端持久化解决方案: Web SQL

    客户端持久化解决方案: Web SQL

    Web SQL 提供了一组使用 SQL 操作客户端数据库的 APIs, 不是 HTML5 规范的一部分,是一个独立的规范.

    核心方法

    • openDatabase: 打开或新建数据库,返回数据库对象。
    • transaction: 打开一个事务,从而可以执行提交或者回滚。
    • executeSql: 执行实际的 SQL 查询。

    打开/创建数据库

    // window.openDatabase(dbName, version, description, dbSize, [createCallback]);
    // 注: 数据库创建时才会触发回调
    var db = openDatabase('mydb', '1.0', 'Test DB', 2*1024*1024, function() { console.log('db created..')});
    

    创建数据库之后,就可以通过executeSql创建表,进而执行CRUD操作.

    创建表

    var db = openDatabase(dbName);
    db.transaction(function(transaction) {////开启事务,在回调中执行sql
        transaction.executeSql('CREATE TABLE IF NOT EXISTS user (id unique, name)');
    });
    

    插入数据

    var db = openDatabase('mydb', '1.0', 'Test DB', 2 * 1024 * 1024);
    db.transaction(function (tx) {
       tx.executeSql('CREATE TABLE IF NOT EXISTS LOGS (id unique, log)');
       tx.executeSql('INSERT INTO LOGS (id, log) VALUES (1, "菜鸟教程")');
       tx.executeSql('INSERT INTO LOGS (id, log) VALUES (2, "www.runoob.com")');
    });
    

    读取数据

    db.transaction(function (tx) {
       tx.executeSql('SELECT * FROM LOGS', [], function (tx, results) {
          var len = results.rows.length, i;
          msg = "<p>查询记录条数: " + len + "</p>";
          document.querySelector('#status').innerHTML +=  msg;
        
          for (i = 0; i < len; i++){
             alert(results.rows.item(i).log );
          }
        
       }, null);
    });
  • 相关阅读:
    ssi服务器端指令
    json格式的转换为json字符串函数
    接口测试基础和jmeter
    【JZOJ6274】梦境
    【JZOJ6275】小L的数列
    【luoguP4721】分治 FFT
    【luoguP3868】猜数字
    中国剩余定理与扩展中国剩余定理
    【JZOJ6277】矩阵游戏
    【JZOJ6271】锻造 (forging)
  • 原文地址:https://www.cnblogs.com/stephenykk/p/6080717.html
Copyright © 2011-2022 走看看