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,一经查实,立即删除!

相关文章

软件工程第一次作业补充

1.关注《构建之法》的作者邹欣老师的博客;2.花二十分钟写一个能自动生成小学四则运算题目的“软件”,要求除了整数以外,还要支持真分数的四则运算。将代码上传至coding.net,并将地址发布至自己的博客。代码地址: https://coding.n…

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

最近看到一个有意思的提问:抖音服务器带宽有多大,为什么能够供那么多人同时刷?今天来给小伙伴们科普一下。 抖音,百度,阿里云,腾讯都是自建的数据中心,都是 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#编程开发技巧了,之前因为工作和生活…

JS引用类型 -- Array类型

ECMAScript数组与其他语言中的数组都是数据的有序列表,但与其他语言不同的是,ECMAScript数组的每一项可以保存任何类型的数据。而且ECMAScript数组的大小是可以动态调整的,即可以随着数据的添加自动增长。 创建数组的基本方式有两种&#xff…

分布式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…

Httpclient发送json请求

一、Httpclient发送json请求 public String RequestJsonPost(String url){ String strresponse null; try{ HttpClient hc new DefaultHttpClient(); HttpPost hp new HttpPost(url); JSONObject jsonParam new JSONObject(); jsonParam.pu…

基于ABP的AppUser对象扩展

在ABP中AppUser表的数据字段是有限的,现在有个场景是和小程序对接,需要在AppUser表中添加一个OpenId字段。今天有个小伙伴在群中遇到的问题是基于ABP的AppUser对象扩展后,用户查询是没有问题的,但是增加和更新就会报"XXX fie…

html (align 、placeholder )

onblur 事件会在对象失去焦点时发生。 onkeyup 事件会在键盘按键被松开时发生。 ----------------------------------------------------------------------------------------------------------- align 属性规定单元格中内容的水平对齐方式。 <td align"value"&…

4种分布式session解决方案

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

L2-020. 功夫传人

一门武功能否传承久远并被发扬光大&#xff0c;是要看缘分的。一般来说&#xff0c;师傅传授给徒弟的武功总要打个折扣&#xff0c;于是越往后传&#xff0c;弟子们的功夫就越弱…… 直到某一支的某一代突然出现一个天分特别高的弟子&#xff08;或者是吃到了灵丹、挖到了特别的…

找数组里没出现的数

题目&#xff1a;给定整数的数组&#xff0c;其中1≤A [1]≤ N&#xff08;N数组的大小&#xff09;&#xff0c;一些元素出现两次以及其他出现一次。找到不出现在这个数组中的[1&#xff0c;n ]包含的所有元素。 思路&#xff1a;map的思想。。。。 public List<Integer>…

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

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

分享 60 个神级 VS Code 插件

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

URL结构分析

http://bh-lay.com/blog/14b531db64a

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

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