websql存储方式一共有以下几个方法

openDatabase:这个方法使用现有的数据库或新建数据库来创建数据库对象。

transaction:这个方法允许我们执行事务处理;

executeSql:这个方法用于执行sql语句;

1.

var db = openDatabase(name,version,displayName,estimateSize,creationCallback);

name:数据库的名字;

version:数据库的版本号;

displayName:数据库的描述;

estimateSize:数据库保存数据的大小;

createCallback:回调函数:

2. 调用transaction来执行sql语句

transaction(function(tx){})

tx:回调函数所接收的参数,此参数为transaction对象的引用。

3. 调用executeSql 方法来表示处理事务

transaction.executeSql(sql,[],dataHandler,errorHandler);

sql:要执行的sql语句;

[ ]:sql语句中的占位符“?”所对应的参数。

dataHandler:执行sql语句成功时调用的回调函数:

errorHandler:执行sql语句失败时调用的回调函数。

先贴代码

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>webSQL</title><script src="jquery.min.js" type="text/javascript"></script><script type="text/javascript">//初始化数据库function initDatabase(){var db =getCurrentDB();if(!db){alert('您的浏览器不支持HTML本地数据库');return ;}db.transaction(function(trans){trans.executeSql('create table if not exists Demo(uName text null,title text null,words text null)',[],function(trans,result){},function(trans,message){});})}//创建数据库function getCurrentDB(){var db = openDatabase('data.db','1.0','demo data',1024*1024);return db;}$(function(){//初始化数据库initDatabase();$("#save").on('click',function(){var txtName = $('#userName').val();var txtTitle= $('#userTitle').val();var txtWords = $('#userContent').val();//执行sql脚本来插入数据var db = getCurrentDB();db.transaction(function(trans){trans.executeSql('insert into Demo(uName,title,words)values(?,?,?)',[txtName,txtTitle,txtWords],function(ts,data){},function(ts,message){alert(message);})})})//将数据展示到表格中$("#showContent").on('click',function(){showAllTheData();});//显示所有数据库中的数据到页面中function showAllTheData(){$('#showTable').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++){//获取每一行数据的json对象(键值对组成),将数据拼接成表格中的一行行数据appendDataToTable(data.rows.item(i));}}},function(ts,message){alert(message);})})}function appendDataToTable(data){var txtName =data.uName;var txtTitle =data.title;var txtWords =data.words;var strHTML ='';strHTML+='<tr>';strHTML += "<td>"+txtName+"</td>";strHTML += "<td>"+txtTitle+"</td>";strHTML += "<td>"+txtWords+"</td>";strHTML+='</tr>';$("#showTable").append(strHTML);}})</script>
</head>
<body>
<table><tr><td>用户名:</td><td><input type="text" id="userName"/></td></tr><tr><td>标题:</td><td><input type="text" id="userTitle"/></td></tr><tr><td>留言:</td><td><input type="text" id="userContent"/></td></tr>
</table>
<input type="button" id="save" value="保存" />
<input type="button" id="showContent" value="展示你的信息"/>
<table id ='showTable'></table>
</body>
</html>

.

  

webSQL 实现即时通讯相关推荐

  1. Openfire XMPP Smack RTC IM 即时通讯 聊天 MD

    Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...

  2. 2022-2028年中国即时通讯市场投资分析及前景预测报告

    [报告类型]产业研究 [出版时间]即时更新(交付时间约3个工作日) [发布机构]智研瞻产业研究院 [报告格式]PDF版 本报告介绍了即时通讯行业相关概述.中国即时通讯行业运行环境.分析了中国即时通讯行 ...

  3. 接入网易云信IM即时通讯的微信小程序聊天室

    微信小程序开发交流qq群   173683895    承接微信小程序开发.扫码加微信. 接入流程: 初次接触网易云通信IM服务,您可以通过以下产品介绍文档了解我们的产品功能.相关概念.业务限制: 产 ...

  4. 即时通讯下数据粘包、断包处理实例(基于CocoaAsyncSocket)

    来源:涂耀辉 www.jianshu.com/p/2e16572c9ddc 如有好文章投稿,请点击 → 这里了解详情 前言 本文旨以实例的方式,使用CocoaAsyncSocket这个框架进行数据封包 ...

  5. 在linux系统下实现音视频即时通讯的部分代码

    由于使用习惯,Linux在中国受欢迎程度远不如windows,相应的软件也比较少,尤其是音视频类的软件,但是,这并不代表就完全没有.下面介绍一款强大的音视频即时通讯平台给大家,它就是--Anychat ...

  6. 一款 Java 开源的 Spring Boot 即时通讯 IM 聊天系统

    点击上方蓝色"方志朋",选择"设为星标" 回复"666"获取独家整理的学习资料! 开篇 电商平台最不能缺的就是即时通讯,例如通知类下发,客服 ...

  7. 推荐:一款Java开源的Springboot 即时通讯 IM 聊天系统

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 # 开篇 电商平台最不能缺的就是即时通讯,例如通知类下发,客服聊天 ...

  8. Android即时通讯与IOS端发送语音的问题。

    现在在做一个即时通讯,要发送语音.大家规定好的是aac文件. 现在是我这边录的发给IOS那边可以播放,我自己录的传到服务器再下载下来自己也可以播放,但是IOS那边录的我down下来之后就不行了.放不了 ...

  9. 即时通讯有标准 IM的四种即时通讯协议简介

    IM(Instant Messaging)正在被广泛地采用,特别是在公司与它们的客户互动联接方案上.为了解决即时通讯的标准问题,IETF成立了专门的工作小组,研究和开发与IM相关的协议. 目前IM有四 ...

最新文章

  1. 大利好!学历低的算法工程师要起飞了,这波惊喜来的太突然!
  2. Ajax技术应用方面
  3. Matlab中disp、fprintf和sprintf
  4. QMQ顺序消息设计与实现
  5. Nginx uWsgi Django环境搭建
  6. python调用电脑蜂鸣器一直响_调用系统蜂鸣器方法
  7. QQ2009任务栏的QQ图标怎么隐藏
  8. 【java】监听器的使用
  9. android textView 折叠 展开 ExpandableTextView
  10. ArrayList转换类型为DataTable类型
  11. 数据库系统概论学习总结
  12. 初读《Linux运维之道》浅见
  13. mac如何设置默认输入法
  14. 2022 年 Flutter 适合我吗?Flutter VS Other 量化对比
  15. javascript高级进阶
  16. 电脑上面的word文档被删除了怎么办?分享四种亲测恢复方法
  17. 数据挖掘算法和实践(三):朴素贝叶斯(mushrooms蘑菇数据集)
  18. VAD实现-读取语音数据、数据预处理、算法计算流程与框架
  19. 二级MS Office高级应用--Excel常用函数
  20. 漂洋过海去学习,一文读懂程序员如何从初级升级到高级

热门文章

  1. python测试工程师招聘_招聘软件测试工程师,限女生
  2. python一行输入多个值用空格隔开_2020-09-22-Python-函数嵌套、filter()函数、一行输入多个整数(空格分隔)、多维列表的输入...
  3. 牛客java面试题总结版(四)
  4. python给函数设置超时时间_在 Linux/Mac 下为Python函数添加超时时间的方法
  5. php获取循环,PHP循环获取GET和POST值的代码
  6. VMware ESXI虚拟化安装win10系统
  7. JDBF读取DBF文件
  8. Mac 下Eclipse无法连接手机
  9. python if __name__ == '__main__'
  10. 标准库中的智能指针shared_ptr