iis服务器助手广告
返回顶部
首页 > 资讯 > 前端开发 > VUE >本地数据库是不是html5新特性
  • 891
分享到

本地数据库是不是html5新特性

2024-04-02 19:04:59 891人浏览 八月长安
摘要

这篇文章给大家分享的是有关本地数据库是不是HTML5新特性的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 本地数据库是html5新特性。Html5提供

这篇文章给大家分享的是有关本地数据库是不是HTML5新特性的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

本地数据库html5新特性。Html5提供了一个浏览器端的数据库支持,允许开发者直接通jsapi在浏览器端创建一个本地的数据库,而且支持标准的sql的CRUD操作,让离线的WEB应用更加方便的存储结构化的数据。

教程操作环境:windows7系统、HTML5版、Dell G3电脑。

虽然Html5已经提供了功能强大的localStorage和sessionStorage,但是他们两个都只能提供存储简单数据结构的数据,对于复杂的Web应用的数据却无能为力。逆天的是Html5提供了一个浏览器端的数据库支持,允许我们直接通JS的API在浏览器端创建一个本地的数据库,而且支持标准的SQL的CRUD操作,让离线的Web应用更加方便的存储结构化的数据。接下里介绍一下本地数据的相关API和用法。

操作本地数据库的最基本的步骤是:

  • 第一步:openDatabase方法:创建一个访问数据库的对象。

  • 第二步:使用第一步创建的数据库访问对象来执行transaction方法,通过此方法可以设置一个开启事务成功的事件响应方法,在事件响应方法中可以执行SQL.

  • 第三步:通过executeSql方法执行查询,当然查询可以是:CRUD。

接下来分别介绍一下相关的方法的参数和用法。

(1)openDatabase方法:

//Demo:获取或者创建一个数据库,如果数据库不存在那么创建之
var dataBase = openDatabase("student", "1.0", "学生表", 1024 * 1024, function () { });

openDatabase方法打开一个已经存在的数据库,如果数据库不存在,它还可以创建数据库。几个参数意义分别是:

  • 1,数据库名称。

  • 2,数据库的版本号,目前来说传个1.0就可以了,当然可以不填;

  • 3,对数据库的描述。

  • 4,设置分配的数据库的大小(单位是kb)。

  • 5,回调函数(可省略)。

  • 初次调用时创建数据库,以后就是建立连接了。

(2)db.transaction方法可以设置一个回调函数,此函数可以接受一个参数就是我们开启的事务的对象。然后通过此对象可以进行执行Sql脚本,跟下面的步骤可以结合起来。

(3)通过executeSql方法执行查询。

ts.executeSql(sqlQuery,[value1,value2..],dataHandler,errorHandler)

参数说明:

  • qlQuery:需要具体执行的sql语句,可以是create、select、update、delete;

  • value1,value2..]:sql语句中所有使用到的参数的数组,在executeSql方法中,将s>语句中所要使用的参数先用“?”代替,然后依次将这些参数组成数组放在第二个参数中

  • ataHandler:执行成功是调用的回调函数,通过该函数可以获得查询结果集;

  • 4,errorHandler:执行失败时调用的回调函数;

下面是一个综合的例子,可以看一下:

<head>
 <script src="Scripts/Jquery-1.5.1.js" type="text/javascript"></script>
    <script type="text/javascript">
        function initDatabase() {
            var db = getCurrentDb();//初始化数据库
            if(!db) {alert("您的浏览器不支持HTML5本地数据库");return;}
            db.transaction(function (trans) {//启动一个事务,并设置回调函数
                //执行创建表的Sql脚本
                trans.executeSql("create table if not exists Demo(uName text null,title text null,Words text null)", [], function (trans, result) {
                }, function (trans, message) {//消息的回调函数alert(message);});
            }, function (trans, result) {
            }, function (trans, message) {
            });
        }
        $(function () {//页面加载完成后绑定页面按钮的点击事件
            initDatabase();
            $("#btnSave").click(function () {
                var txtName = $("#txtName").val();
                var txtTitle = $("#txtTitle").val();
                var txtWords = $("#txtWords").val();
                var db = getCurrentDb();
                //执行sql脚本,插入数据
                db.transaction(function (trans) {
                    trans.executeSql("insert into Demo(uName,title,words) values(?,?,?) ", [txtName, txtTitle, txtWords], function (ts, data) {
                    }, function (ts, message) {
                        alert(message);
                    });
                });
                showAllTheData();
            });
        });
        function getCurrentDb() {
            //打开数据库,或者直接连接数据库参数:数据库名称,版本,概述,大小
            //如果数据库不存在那么创建之
            var db = openDatabase("myDb", "1.0", "it's to save demo data!", 1024 * 1024); ;
            return db;
        }
        //显示所有数据库中的数据到页面上去
        function showAllTheData() {
            $("#tblData").empty();
            var db = getCurrentDb();
            db.transaction(function (trans) {
                trans.executeSql("select * from Demo ", [], function (ts, data) {
                    if (data) {
                        for (var i = 0; i < data.rows.length; i++) {
                            appendDataToTable(data.rows.item(i));//获取某行数据的JSON对象
                        }
                    }
                }, function (ts, message) {alert(message);var tst = message;});
            });
        }
        function appendDataToTable(data) {//将数据展示到表格里面
            //uName,title,words
            var txtName = data.uName;
            var txtTitle = data.title;
            var words = data.words;
            var strHtml = "";
            strHtml += "<tr>";
            strHtml += "<td>"+txtName+"</td>";
            strHtml += "<td>" + txtTitle + "</td>";
            strHtml += "<td>" + words + "</td>";
            strHtml += "</tr>";
            $("#tblData").append(strHtml);
        }
    </script>
</head>
    <body>
        <table>
            <tr>
                <td>用户名:</td>
                <td><input type="text" name="txtName" id="txtName" required/></td>
            </tr>
               <tr>
                <td>标题:</td>
                <td><input type="text" name="txtTitle" id="txtTitle" required/></td>
            </tr>
            <tr>
                <td>留言:</td>
                <td><input type="text" name="txtWords" id="txtWords" required/></td>
            </tr>
        </table>
        <input type="button" value="保存" id="btnSave"/>
        <hr/>
        <input type="button" value="展示所哟数据" onclick="showAllTheData();"/>
        <table id="tblData">
        </table>
    </body>
</html>

执行的效果如图:

本地数据库是不是html5新特性

感谢各位的阅读!关于“本地数据库是不是html5新特性”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

--结束END--

本文标题: 本地数据库是不是html5新特性

本文链接: https://www.lsjlt.com/news/88655.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 本地数据库是不是html5新特性
    这篇文章给大家分享的是有关本地数据库是不是html5新特性的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 本地数据库是html5新特性。Html5提供...
    99+
    2024-04-02
  • 12C数据库泵新特性是什么
    这篇文章主要讲解了“12C数据库泵新特性是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“12C数据库泵新特性是什么”吧!DISABLE_ARCHIVE_...
    99+
    2024-04-02
  • canvas是不是css3新特性
    这篇文章主要为大家展示了“canvas是不是css3新特性”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“canvas是不是css3新特性”这篇文章吧。 ...
    99+
    2024-04-02
  • html5十大新特性是什么
    今天小编给大家分享一下html5十大新特性是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。html5的新特性有:1、语义...
    99+
    2023-07-05
  • html5表单新特性是什么
    这篇文章主要为大家展示了“html5表单新特性是什么”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“html5表单新特性是什么”这篇文章吧。 ...
    99+
    2024-04-02
  • 语义化是html5新特性吗
    小编给大家分享一下语义化是html5新特性吗,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! 语义化是...
    99+
    2024-04-02
  • Set是不是ES6的新特性
    本篇内容介绍了“Set是不是ES6的新特性”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! ...
    99+
    2024-04-02
  • var是不是es6新增的特性
    本篇内容主要讲解“var是不是es6新增的特性”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“var是不是es6新增的特性”吧! va...
    99+
    2024-04-02
  • 浮动是不是css3的新特性
    今天小编给大家分享一下浮动是不是css3的新特性的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下...
    99+
    2024-04-02
  • HTML5的十五大新特性是什么
    这篇文章主要介绍“HTML5的十五大新特性是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“HTML5的十五大新特性是什么”文章能帮...
    99+
    2024-04-02
  • 数据库中ACID特性是什么
    小编给大家分享一下数据库中ACID特性是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!    ACID...
    99+
    2024-04-02
  • HTMl5中28个新特性分别是什么
    这篇文章主要介绍HTMl5中28个新特性分别是什么,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1. 新的Doctype 尽管使用<!DOCTYPE html>,即使浏览...
    99+
    2024-04-02
  • HTML5本地数据库的基础操作
    这篇文章主要介绍“HTML5本地数据库的基础操作”,在日常操作中,相信很多人在HTML5本地数据库的基础操作问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”HTML5本地数据库...
    99+
    2024-04-02
  • HTML5本地存储和本地数据库的示例分析
    这篇文章将为大家详细讲解有关HTML5本地存储和本地数据库的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。本地存储1.1 本地存储由来的背景由于HTML4时代Co...
    99+
    2024-04-02
  • Oracle 数据库12c新特性总结
    本篇内容介绍了“Oracle 数据库12c新特性总结”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!  1....
    99+
    2024-04-02
  • MySQL各版本的新特性是什么
    这篇文章将为大家详细讲解有关MySQL各版本的新特性是什么,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、各版本的常用命令差异  show innodb statusG...
    99+
    2024-04-02
  • Oracle 数据库12c新特性有哪些
    这篇文章将为大家详细讲解有关Oracle 数据库12c新特性有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。  1. 在线重命名和重新定位活跃数据文件   不同于以...
    99+
    2024-04-02
  • 数据库PostgreSQL 6.0新特性有哪些
    本篇内容介绍了“数据库PostgreSQL 6.0新特性有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成...
    99+
    2024-04-02
  • Oracle数据版本12.2.0.1.0有哪些新特性
    本篇内容主要讲解“Oracle数据版本12.2.0.1.0有哪些新特性”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Oracle数据版本12.2.0.1.0有哪...
    99+
    2024-04-02
  • Hadoop中的数据本地性原则是什么
    Hadoop中的数据本地性原则是将数据存储和计算尽可能地放在同一台计算机上,以减少数据在节点之间的传输和复制,从而提高计算效率和性能...
    99+
    2024-03-12
    Hadoop
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作