WebSQL存储

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

WebSQL这种存储技术,相对于学过数据库的人来说,还是比较容易理解和上手的,主要就是它的存储风格和我们一般所学的SQL Server 和Oracle比较像,对于HTML5来说,当然还有其它的存储技术,比如说LocalStorage,这几天开发了一个真心话大冒险这个游戏,因为数据稍微复杂了一点点,本来想用LocalStorage,不过纠结了很久,想不出来怎么解决数据的分类等等问题,就选用了WebSQL,感觉也还行,就是代码可能就稍微复杂了点,现在就来讲讲WebSQL的几个重要的操作吧:

首先就是要创建一个数据库:

1 db = openDatabase("ToDo", "0.1", "A list of to do items.", 200000); 

以上代码创建了一个数据库对象 db,名称是 Todo,版本编号为0.1。db 还带有描述信息和大概的大小值。用户代理(user agent)可使用这个描述与用户进行交流,说明数据库是用来做什么的。利用代码中提供的大小值,用户代理可以为内容留出足够的存储。如果需要,这个大小是可以改变的,所以没有必要预先假设允许用户使用多少空间。

为了检测之前创建的连接是否成功,你可以检查那个数据库对象是否为null:

2 if(!db)  

3      alert("Failed to connect to database."); 

 

 

对数据库操作:

db.transaction(function(transaction){//当无表存在于数据库中时,调用handleError创建表,
  操作语句;},handleError,success);

 

当操作成功时,执行success函数,若失败,则执行handleError,

譬如说这里的操作语句是:

strSQL = "select * from QType";
  transaction.executeSql(strSQL);

当数据库中不存在QType这个表时,就会执行handleError函数,此时即可在handleError该函数内创建该表了

 

创建一个表:

db.transaction(function(transaction){
  strSQL="create table if not exists QType(QTypeID INTEGER NOT NULL PRIMARY KEY  AUTOINCREMENT,QTDescribe TEXT NOT NULL)"; 

 transaction.executeSql(strSQL);   //执行语句,创建QTYpe  
  },error,success);

 

向表中插入数据:

transaction.executeSql("INSERT INTO QContent(QTypeID,QDescribe) values(1,"你好")");

 

若是要插入一个变量,

transaction.executeSql("INSERT INTO QContent(QTypeID,QDescribe) values(?,?)",[变量名1,变量名2]);//问号分别对应后面的变量名

 

查找数据:

transaction.executeSql("select * from table where id=2");

 

更多的还有:更新语句:update 删除表:drop table tablename

转载于:https://my.oschina.net/u/2365397/blog/745584

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/283804.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

抖音服务器带宽有多大,才能供上亿人同时刷?

最近看到一个有意思的提问:抖音服务器带宽有多大,为什么能够供那么多人同时刷?今天来给小伙伴们科普一下。 抖音,百度,阿里云,腾讯都是自建的数据中心,都是 T 级别出口带宽(总出口带…

ASP.NET Core 5.0中的Host.CreateDefaultBuilder执行过程

通过Rider调试的方式看了下ASP.NET Core 5.0的Web API默认项目,重点关注Host.CreateDefaultBuilder(args)中的执行过程,主要包括主机配置、应用程序配置、日志配置和依赖注入配置这4个部分。由于水平和篇幅有限,先整体理解、建立框架&#xf…

404和302

为什么80%的码农都做不了架构师?>>> 404 php中用header()函数是可以为返回页面添加404的头信息的,从而提示浏览器该网页找不到了。 所以可以使用:header("HTTP/1.0 404 Not Found");或者:header("Stat…

oracle sqlplus使用

2019独角兽企业重金招聘Python工程师标准>>> 1、常用连接方式 sqlplus / as sysdba 无需数据库进入可用状态,就可用用该命令登录,运行startup来启动。 sqlplus username/pwdhost/service_name,如: sqlplus tiger/scott…

20款IDEA 神级插件 效率提升 30 倍,写代码必备

插件目录 1. Alibaba Java Coding Guidelines 2.GsonFormat 3.A8Translation 4.Maven Helper 5.Free Mybatis plugin 6.Grep Console 7.Lombok 8.Nyan progress bar 9.FindBugs-IDEA 10.Key Promoter X 11.JavaDoc 12.ignore 13.RainbowBrackets 14.Activate-power-mode 15.C…

【温故知新】C# Linq中 Where使用技巧

微信公众号:趣编程ACE关注可了解更多的.NET日常实战开发技巧,如需源码 后台回复 源码 即可;如果觉得对你有帮助,欢迎关注C# Linq中 Where使用技巧hello 大家好,很开心又能重新分享C#编程开发技巧了,之前因为工作和生活…

分布式id解决方案

文章目录 1.分布式id实现方案 1.1.uuid1.2 数据库主键自增1.3 Redis自增1.4 号段模式1.5 雪花算法(snowflake) 1.5.1 百度(uid-generator)1.5.2 美团(Leaf)所谓id就是能够用作唯一标识的记号。 在我们日常的…

我和大象的十年往事 - 感恩、感谢、加油、腾飞

背景 http://www.idcquan.com/Special/OSCAR2018/index.html 由中国信息通信研究院主办、中国通信标准化协会支持的"OSCAR云计算开源产业大会"于2018年3月21日-22日在国家会议中心举行。 非常有幸获得了“OSCAR尖峰开源人物”奖项。 奖项不敢自居&#xf…

4种分布式session解决方案

cookie和session的区别和联系 cookie是本地客户端用来存储少量数据信息的,保存在客户端,用户能够很容易的获取,安全性不高,存储的数据量小 session是服务器用来存储部分数据信息,保存在服务器,用户不容易获…

Blazor University (43)JavaScript 互操作 —— 类型安全

原文链接:https://blazor-university.com/javascript-interop/calling-dotnet-from-javascript/type-safety/类型安全在从 JavaScript 调用 .NET[1] 部分中,您可能已经注意到我们的 JavaScript 的第 6 行在将随机生成的数字传递给 .NET 之前调用了 toStr…

分享 60 个神级 VS Code 插件

文章来源:juejin.cn/post/6994327298740600839 本文不做任何编辑器的比较,只是我本人日常使用 vscode 进行开发,并且比较喜欢折腾 vscode ,会到处找这一些好玩的插件,于是越攒越多,今天给大家推荐一下我收…

PHP 基础篇 - PHP 中 DES 加解密详解

2019独角兽企业重金招聘Python工程师标准>>> 一、简介 DES 是对称性加密里面常见一种,全称为 Data Encryption Standard,即数据加密标准,是一种使用密钥加密的块算法。密钥长度是64位(bit),超过位数密钥被忽略。所谓对…

PerfView专题 (第一篇): 如何寻找热点函数

一:背景 准备开个系列来聊一下 PerfView 这款工具,熟悉我的朋友都知道我喜欢用 WinDbg,这东西虽然很牛,但也不是万能的,也有一些场景他解决不了或者很难解决,这时候借助一些其他的工具来辅助,是…

Centos7设置IP为固定值

1.进入到系统的IP地址保存文件所在目录 [rootlocalhost ~]# cd /etc/sysconfig/network-scripts 2.修改保存IP信息的文件 [rootlocalhost ~]# vim ifcfg-eth0 (你机器上的名字有可能不是这个,但是是以ifcfg-eth开头的文件) 保存后退出 3.重启…

为 EditorConfig 文件开启错误编译失败

前言上次,我们介绍了 EditorConfig 文件可以自定义代码样式规则。但是,当我们想设置代码样式严重性,比如不允许编译成功时,又踩了不少坑。修改无效想把 var 首选项,从“首选"var" 仅重构”,改成“…

【.NET特供-第三季】ASP.NET MVC系列:传统WebForm站点和MVC站点执行机制对照

本文以图形化的方式,从‘执行机制’方面对照传统WebForm站点和MVC站点。请參看下面图形: 一、执行机制 当我们訪问一个站点的时候,浏览器和server都是做了哪些动作呢? (本文仅仅是提供一个简单的执行过程,有…

投阿里被拒,说跳槽太频繁!三年两个工作,问题真的那么大吗?

什么样的跳槽频率才不算频繁?一位网友发问:投阿里被拒,理由是跳槽太频繁,不合适。三年两个工作,问题真的那么大吗?网友说,阿里对稳定性要求非常高,三年两跳和五年三跳都是红线&#…

为什么信息化 ≠ 数字化?终于有人讲明白了

作者:石秀峰 来源:谈数据(ID:learning-bigdata) 近期,我一做数字化咨询的朋友(化名老王)遇到了一个头痛的问题:话说老王的团队近期接了一个大单——一大型制造业的数字化…

JAVA代码—算法基础:数独问题(Sodoku Puzzles)

JAVA代码—算法基础:数独问题(Sodoku Puzzles) 数独问题(Sodoku Puzzles) 数独游戏(日语:数独 すうどく)是一种源自18世纪末的瑞士的游戏,后在美国发展、并在日本得以发扬…

Linux系统恢复

实验目的:熟悉了前面的启动流程,系统的一个大致的启动流程是怎样的,而其中牵扯到了些许文件,这些文件在系统启动时用于衔接各个步骤,如果这些文件损坏或缺失,系统将不能正常启动,这次写的内容就…