• Web SQL


    HTML5本地存储——Web SQL Database

    基于 HTML5 中的 Web SQL Database 来构建应用程序

    前端HTML5几种存储方式的总结

     

     

    <!DOCTYPE HTML>
    <html>
    <head>
        <script type="text/javascript">
    
            var msg;
    
            // 可以有多个数据库,但无法遍历,
            // 包括空字符串在内的所有字符串都可以作为有效地数据库名称,数据库名称区分大小写,且可以比较。
            // 一个数据库只能有一个版本号
            // 一个显示名字(displayName),
            // 数据库将要保存数据的大小(estimatedSize,以字节为单位 )
            // 一个可选的回调函数(createionCallback,如果数据库没有被创建,这个函数将会被调用 )
            var db = openDatabase('mydb', '1.0', 'Test DB', 2 * 1024 * 1024);
    
            // 方法 transaction() 和 readTransaction() 有一个到三个参数, 
            // 后两个参数为可选的,分别表示错误回调函数和成功回调函数。
            // transaction() 方法为 read/write 模式,readTransaction() 方法为只读模式;
            db.transaction(function (tx) {
                   tx.executeSql('CREATE TABLE IF NOT EXISTS ques (id unique, log)');
                   tx.executeSql('INSERT INTO ques (id, log) VALUES (4, "foobar")');
                   tx.executeSql('INSERT INTO ques (id, log) VALUES (3, "logmsg")');
    
                   msg = '<p>Log message created and row inserted.</p>';
                document.querySelector('#status').innerHTML =   msg;
            },function(){alert('e');},function(){alert('s');});
    
    
            // executeSql这个函数具有四个参数:
            // 表示查询的字符串(sqlStatement);
            // 插入到查询语句中问号所在处的字符串数据(arguments);
            // 一个可选的成功时执行函数(callback);
            // 一个可选的失败时执行函数(errorCallback)。
    
            // 查询结果是一个对象
            // 插入数据库,insertId 代表这个行号;如果插入多行数据,insertId 代表插入数据的最后一行行号。
            // 改变的行数用 rowsAffected 表示,没有改变 rowsAffected 为 0,“SELECT”语句,rowsAffected 就为 0.
            // rows 为一个 SQLResultSetRowList 对象,代表数据库按顺序返回的行。如果没有返回任何行,则这个对象为空。
            db.transaction(function (tx) {
                tx.executeSql('SELECT * FROM LOGS', [], function (tx, results) {
                    var len = results.rows.length, i;
                         msg = "<p>Found rows: " + len + "</p>";
                         document.querySelector('#status').innerHTML +=   msg;
                    for (i = 0; i < len; i++){
                           msg = "<p><b>" + results.rows.item(i).log + "</b></p>";
                           document.querySelector('#status').innerHTML +=   msg;
                    }
                 }, null);
            });
        </script>
    </head>
    <body>
        <div id="status" name="status">Status Message</div>
    </body>
    </html>
    HTML5 webSQL
  • 相关阅读:
    贝叶斯公式由浅入深大讲解—AI基础算法入门
    再谈前端HTML模板技术
    再谈angularJS数据绑定机制及背后原理—angularJS常见问题总结
    mac版chrome升级到Version 65.0.3325.18后无法打开百度bing搜狗
    图说js中的this——深入理解javascript中this指针
    web app响应式字体设置!rem之我见
    【2020-04-18】 加班
    【2020-04-06】汇郡海下的沉思
    【2020-03-28】Dubbo源码杂谈
    【2020-03-21】Dubbo本地环境搭建-实现服务注册和消费
  • 原文地址:https://www.cnblogs.com/weixing/p/5708419.html
Copyright © 2020-2023  润新知