HTML5的存储功能和网络SQL怎么操作


这篇文章主要讲解了“HTML5的存储功能和网络SQL怎么操作”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“HTML5的存储功能和网络SQL怎么操作”吧!
HTML5使用了HTTP机制的Cookie,用于在客户端存储结构化数据以及克服以下缺点。
每个HTTP请求中都包含Cookies,从而导致传输相同的数据减缓我们的Web应用程序。
每个HTTP请求中都包含Cookies,从而导致发送未加密的数据到互联网上。
Cookies只能存储有限的4KB数据,不足以存储所需的数据。这两种存储方式是会话存储和本地存储,它们将用于处理不同的情况。
几乎所有最新版本的浏览器都支持HTML5存储,包括IE浏览器。
会话存储
_会话存储_被设计为用户使用单个事务的场景,但是同时可以在不同的窗口中执行多个事务。
示例
如果,该网站使用cookie跟踪用户购买的机票,当用户在窗口中点击页面时,从一个窗口到另一个时当前已经购买的机票会“泄漏”,这可能导致用户购买同一航班的两张机票而没有注意。
HTML5会话存储属性,此网站可以将数据添加到会话存储中,用户仍然可以在打开的持有该会话的窗口中访问同一站点的任意页面,当关闭窗口时,会话也会丢失。
下面的代码将会设置一个会话变量,然后访问该变量:
XML / HTML代码将内容复制到文本

if(sessionStorage.hits){
sessionStorage.hits = 数字(sessionStorage.hits)+1;
}其他{
sessionStorage.hits = 1 ;
}
document.write(“总点击数:” + sessionStorage.hits);
脚本>
刷新页面以增加点击数。 p >
关闭窗口,然后再次打开并检查结果。 p >
body >
html >
本地是
_出于性能原因,Web应用程序可能希望在客户端存储百万字节的用户数据,例如用户撰写的整个文档或者是用户的邮箱。
Cookies并不能很好的处理这种情况,因为每个请求都会传输。
示例
HTML5发布了localStorage属性,可以用于访问页面的本地存储区域而没有时间限制,无论何时我们使用这个页面的时候本地存储都是可用的。
下面的代码设置了一个本地存储变量,每次访问该页面时都可以访问该变量,甚至是下次打开窗口时:
XML / HTML代码将内容复制到文本

if(localStorage.hits){
localStorage.hits = 数字(localStorage.hits)+1;
}其他{
localStorage.hits = 1 ;
}
document.write(“总点击数:” + localStorage.hits);
脚本>
刷新页面以增加点击数。 p >
关闭窗口,然后再次打开并检查结果。 p >
body >
html >
方便学习上述概念-请进行在线练习。
删除Web存储
在本地机器上存储敏感数据可能是危险的,可能会留下安全隐患。
_会话存储数据_在会话终止之后将由浏览器立即删除。
要清除本地存储设置需要调用localStorage.remove(’key’);这个’key’就是我们想要删除的值对应的键。如果想要清除所有设置,需要调用localStorage.clear()方法。
下面的代码会完全清除本地存储:
XML / HTML代码将内容复制到文本

localStorage.clear();
//重置点击数。
if(localStorage.hits){
localStorage.hits = 数字(localStorage.hits)+1;
}其他{
localStorage.hits = 1 ;
}
document.write(“总点击数:” + localStorage.hits);
脚本>
刷新页面不会增加点击计数器。 p >
关闭窗口,然后再次打开并检查结果。 p >
body >
html >
Web SQL数据库
Web SQL数据库API并不是HTML5规范的一部分,但是它是一个独立的规范,而是使用了SQL操作客户端数据库的API。核心方法下面是规范中定义的三个核心方法。也会涵盖在本教程中:
的openDatabase:这个方法使用现有的数据库或者新建的数据库创建一个数据库对象的事务:这个方法让我们能够控制一个事务,以及基于这种情况执行提交或者回滚。的ExecuteSQL:这个方法用于执行实际的SQL查询。开启数据库如果数据库已经存在,openDatabase方法负责开启数据库,如果不存在,这个方法会创建它。
使用以下的代码可以创建并开启一个数据库:
JavaScript代码将内容复制到
var db = openDatabase(’mydb’ , ‘1.0’ , ‘Test DB’ ,2 * 1024 * 1024);
上面的方法接受以下五个参数:
数据库名称版本号描述文本数据库大小被创建的最后一个也是一个第五个参数,创建引用会在创建数据库后被调用。然而,甚至没有这个特性(功能),运行时仍会创建数据库以及正确的版本。
执行查询
执行查询需要使用database.transaction()函数。这个函数需要一个参数,它是一个负责实际执行查询的函数,如下所示:
JavaScript代码将内容复制到
var db = openDatabase(’mydb’ , ‘1.0’ , ‘Test DB’ ,2 * 1024 * 1024);
db.transaction(函数 (tx){
tx.executeSql(’如果不存在日志则创建表(id unique,log)’ );
});
上面的查询语句会在’mydb’数据库中创建一个叫做的LOGS的表。
插入操作
为了在表中创建合并,我们在上面的示例中加入简单的SQL查询,如下所示:
JavaScript代码将内容复制到
var db = openDatabase(’mydb’ , ‘1.0’ , ‘Test DB’ ,2 * 1024 * 1024);
db.transaction(函数 (tx){
tx.executeSql(’如果不存在日志则创建表(id unique,log)’ );
tx.executeSql(’将日志插入(ID,日志)值(1,“ foobar”)’ );
tx.executeSql(’将日志插入(ID,日志)值(2,“ logmsg”)’ );
});
创建的时还可以传递如下所示的动态值:
JavaScript代码将内容复制到
var db = openDatabase(’mydb’ , ‘1.0’ , ‘Test DB’ ,2 * 1024 * 1024);
db.transaction(函数 (tx){
tx.executeSql(’如果不存在日志则创建表(id unique,log)’ );
tx.executeSql(’将日志插入日志
(id,log)值(?,?’ ),[e_id,e_log];
});
这里的e_id和e_log是外部变量,executeSql会映射数组参数中的每个对应给“?”。
读取操作
要读取已经存在的记录,我们可以使用替换来捕获结果,如下所示:
JavaScript代码将内容复制到
var db = openDatabase(’mydb’ , ‘1.0’ , ‘Test DB’ ,2 * 1024 * 1024);
db.transaction(函数 (tx){
tx.executeSql(’如果不存在日志则创建表(id unique,log)’ );
tx.executeSql(’将日志插入(ID,日志)值(1,“ foobar”)’ );
tx.executeSql(’将日志插入(ID,日志)值(2,“ logmsg”)’ );
});
db.transaction(函数 (tx){
tx.executeSql(’SELECT * FROM LOGS’ ,[], 函数 (tx,结果){
var len = results.rows.length,i;
msg = “ 找到的行:” + len + “ p>” ;
document.querySelector(’#status’ ).innerHTML + = msg;
对于 (i = 0; i

警报(results.rows.item(i).log);

}

},为 null );

});

最终示例最后,然我们把这个例子放到如下所示的完整HTML5文档中,然后尝试在Safari浏览器中运行它:

JavaScript代码将内容复制到

var db = openDatabase(’mydb’ , ‘1.0’ , ‘Test DB’ ,2 * 1024 * 1024);

var msg;

db.transaction(函数 (tx){

tx.executeSql(’如果不存在日志则创建表(id unique,log)’ );

tx.executeSql(’将日志插入(ID,日志)值(1,“ foobar”)’ );

tx.executeSql(’将日志插入(ID,日志)值(2,“ logmsg”)’ );

msg = ‘

已创建日志消息并插入行。 p>’ ;

document.querySelector(’#status’ ).innerHTML = msg;

});

db.transaction(函数 (tx){

tx.executeSql(’SELECT * FROM LOGS’ ,[], 函数 (tx,结果){

var len = results.rows.length,i;

msg = “

找到的行:” + len + “ p>” ;

document.querySelector(’#status’ ).innerHTML + = msg;

对于 (i = 0; i

msg = “

” + results.rows.item(i).log + “ b> p>” ;

document.querySelector(’#status’ ).innerHTML + = msg;

}

},为 null );

});

script>

head>

状态消息 div>

body>

html>

在浏览器中这会生成如下所示结果:

复制代码

代码如下:

创建日志消息并插入行。 p>

找到的行:2 p>

foobar p>

logmsg

感谢各位的阅读,以上就是“HTML5的存储功能和网络SQL怎么操作”的内容了,经过本文的学习后,相信大家对HTML5的存储功能和网络SQL怎么操作这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是百云主机,小编将为大家推送更多相关知识点的文章,欢迎关注!

推荐阅读:
  1. 存储网络
  2. 用Bmob实现注册和登录功能(网络存储)

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@byun.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

html5
sql

  • 上一篇新闻:

    HTML5中Canvas的使用方法有哪些
  • 下一篇新闻:

    HTML5 Canvas如何实现旋转和缩放

猜你喜欢

  • 云虚拟主机的特点是什么
  • 租用云主机的成本怎么算
  • 香港网站服务器租用怎么选择
  • 免费ssl证书使用有哪些缺点
  • 个人虚拟主机购买怎么使用
  • 新加坡云虚拟主机购买怎么用
  • 云服务器建设标准有哪些
  • android listview的用法是什么
  • vps重启数据库怎么弄
  • 高防vps租用怎么选择便宜


警报(results.rows.item(i).log);
}
},为 null );
});
最终示例最后,然我们把这个例子放到如下所示的完整HTML5文档中,然后尝试在Safari浏览器中运行它:
JavaScript代码将内容复制到


var db = openDatabase(’mydb’ , ‘1.0’ , ‘Test DB’ ,2 * 1024 * 1024);
var msg;
db.transaction(函数 (tx){
tx.executeSql(’如果不存在日志则创建表(id unique,log)’ );
tx.executeSql(’将日志插入(ID,日志)值(1,“ foobar”)’ );
tx.executeSql(’将日志插入(ID,日志)值(2,“ logmsg”)’ );
msg = ‘已创建日志消息并插入行。 p>’ ;
document.querySelector(’#status’ ).innerHTML = msg;
});
db.transaction(函数 (tx){
tx.executeSql(’SELECT * FROM LOGS’ ,[], 函数 (tx,结果){
var len = results.rows.length,i;
msg = “ 找到的行:” + len + “ p>” ;
document.querySelector(’#status’ ).innerHTML + = msg;
对于 (i = 0; i

msg = “

” + results.rows.item(i).log + “ b> p>” ;

document.querySelector(’#status’ ).innerHTML + = msg;

}

},为 null );

});

script>

head>

状态消息 div>

body>

html>

在浏览器中这会生成如下所示结果:

复制代码

代码如下:

创建日志消息并插入行。 p>

找到的行:2 p>

foobar p>

logmsg

感谢各位的阅读,以上就是“HTML5的存储功能和网络SQL怎么操作”的内容了,经过本文的学习后,相信大家对HTML5的存储功能和网络SQL怎么操作这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是百云主机,小编将为大家推送更多相关知识点的文章,欢迎关注!

推荐阅读:
  1. 存储网络
  2. 用Bmob实现注册和登录功能(网络存储)

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@byun.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

html5
sql

  • 上一篇新闻:

    HTML5中Canvas的使用方法有哪些
  • 下一篇新闻:

    HTML5 Canvas如何实现旋转和缩放

猜你喜欢

  • 云虚拟主机的特点是什么
  • 租用云主机的成本怎么算
  • 香港网站服务器租用怎么选择
  • 免费ssl证书使用有哪些缺点
  • 个人虚拟主机购买怎么使用
  • 新加坡云虚拟主机购买怎么用
  • 云服务器建设标准有哪些
  • android listview的用法是什么
  • vps重启数据库怎么弄
  • 高防vps租用怎么选择便宜

免费云主机域名
msg = “ ” + results.rows.item(i).log + “ b> p>” ;
document.querySelector(’#status’ ).innerHTML + = msg;
}
},为 null );
});
script>
head>

body>
html>
在浏览器中这会生成如下所示结果:
复制代码
代码如下:
创建日志消息并插入行。 p> 找到的行:2 p> foobar p> logmsg感谢各位的阅读,以上就是“HTML5的存储功能和网络SQL怎么操作”的内容了,经过本文的学习后,相信大家对HTML5的存储功能和网络SQL怎么操作这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是百云主机,小编将为大家推送更多相关知识点的文章,欢迎关注!免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@byun.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

相关推荐: 微信记账小程序开发的基本功能是什么

小编给大家分享一下微信记账小程序开发的基本功能是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! 随着超前消费产品充斥着互联网市场,也让人们在平时生活中消费观念也发生了改变,但是虽…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 10/21 22:58
下一篇 10/21 22:58

相关推荐