PhoneGap 的存储 API_Web Sql
一、介绍
此 API 基于 W3C WEB SQL Database Specification 和 W3C Web Storage API Specification。
有些 设备已经提供了对该规范的实现,对于这些设备采用内置实现而非使用 PhoneGap 的实现。
对于没有存储支持的设 备,PhoneGap 的实现应该是完全兼容 W3C 规范。
二、openDatabase方法
window.openDatabase(name, version, display_name, size)
该方法将创建一个新的 SQL Lite 数据库,并返回该 Database 对象。可使用该 Database 对象 操作数据。
name :数据库的名称。
version:数据库的版本号。
display_name:数据库的显示名。
size:以字节为单位的数据库大小。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>jQuery Mobile Web 应用程序</title>
<link href="../jquery.mobile-1.3.2.css" rel="stylesheet" type="text/css"/>
<script src="../jquery.js" type="text/javascript"></script> <script src="../jquery.mobile-1.3.2.js" type="text/javascript"></script>
<script src="../cordova.js" type="text/javascript"></script>
<script type="text/javascript"> //1.如果数据库存在 则打开 不存在的则创建 然后在打开
var db = window.openDatabase("phonegap100", "1.0","phonegap中文网",1024*1024*20);
if(db){
console.log('数据库连接成功');
}else{
console.log('数据库连接失败');
} //2.执行transaction操作数据库
db.transaction(function(tx){
tx.executeSql("CREATE TABLE test (id int UNIQUE, name TEXT, age int)"); //创建表
}) //插入数据
db.transaction(function(tx){
//四个参数 第一个 sql语句 第二个 sql参数 第三个 成功的回调函数 第四个 失败的回调函数
//tx.executeSql("insert into test(id,name,age) values(1,'张三',20)");
//tx.executeSql("insert into test(id,name,age) values(2,'李四',25)"); //tx.executeSql("insert into test(id,name,age) values(?,?,?)",[3,'赵四',15],null,null); tx.executeSql("insert into test(id,name,age) values(3,'赵五',25)",[],function(tx,rel){
if(rel.rowsAffected>0){
//新增成功
console.log('成功的增加一条数据');
console.log('这条数据的id'+rel.insertId);
}
},function(){
alert('失败');
}); }); //更新数据
db.transaction(function(tx){
//tx.executeSql
//四个参数 第一个 sql语句 第二个 sql参数 第三个 成功的回调函数 第四个 失败的回调函数
//tx.executeSql("insert into test(id,name,age) values(1,'张三',20)");
//tx.executeSql("insert into test(id,name,age) values(2,'李四',25)"); //tx.executeSql("update test set name=?,age=? where id=1",['张三1',50],null,null); //tx.executeSql("update test set name='张三22',age=60 where id=1");
}) //删除数据
db.transaction(function(tx){
//tx.executeSql
//四个参数 第一个 sql语句 第二个 sql参数 第三个 成功的回调函数 第四个 失败的回调函数 //tx.executeSql("update test set name=?,age=? where id=1",['张三1',50],null,null); //tx.executeSql("delete from test where id=1");
}) //查询数据
db.transaction(function(tx){
//tx.executeSql
//四个参数 第一个 sql语句 第二个 sql参数 第三个 成功的回调函数 第四个 失败的回调函数 tx.executeSql("select * from test",[],function(tx,rel){
for(var i=0;i<rel.rows.length;i++){
document.write('姓名:'+rel.rows.item(i)['name']+',年龄:'+rel.rows.item(i)['age']+'<br>');
} },function(){
alert('失败');
});
})
</script>
</head>
<body>
</body>
</html>
PhoneGap 的存储 API_Web Sql的更多相关文章
- html5 webDatabase 存储中sql语句执行可嵌套使用
html5 webDatabase 存储中sql语句执行可嵌套使用,代码如下: *); data.transaction(function(tx){ tx.executeSql("creat ...
- Spring Boot干货系列:(八)数据存储篇-SQL关系型数据库之JdbcTemplate的使用
Spring Boot干货系列:(八)数据存储篇-SQL关系型数据库之JdbcTemplate的使用 原创 2017-04-13 嘟嘟MD 嘟爷java超神学堂 前言 前面几章介绍了一些基础,但都是静 ...
- python爬取豌豆荚中的详细信息并存储到SQL Server中
买了本书<精通Python网络爬虫>,看完了第6章,我感觉我好像可以干点什么:学的不多,其中的笔记我放到了GitHub上:https://github.com/NSGUF/PythonLe ...
- HTML5本地存储——Web SQL Database
在HTML5 WebStorage介绍了html5本地存储的Local Storage和Session Storage,这两个是以键值对存储的解决方案,存储少量数据结构很有用,但是对于大量结构化数据就 ...
- Web持久化存储Web SQL、Local Storage、Cookies(常用)
在浏览器客户端记录一些信息,有三种常用的Web数据持久化存储的方式,分别是Web SQL.Local Storage.Cookies. Web SQL 作为html5本地数据库,可通过一套API来操纵 ...
- [转]HTML5本地存储——Web SQL Database
在HTML5 WebStorage介绍了html5本地存储的Local Storage和Session Storage,这两个是以键值对存储的解决方案,存储少量数据结构很有用,但是对于大量结构化数据就 ...
- HTML5开发学习:本地存储Web Sql Database
Web Sql Database,中文翻译作"本地数据库",是随着HTML5规范加入的在浏览器端运行的轻量级数据库. 在HTML5中,大大丰富了客户端本地可以存储的内容 ...
- PhoneGap 的存储 API_localStorage 和 sessionStorage
一.介绍 1.为了替代Cookile这门古老的客户端存储技术,Html5的WEB Storage Api 提供了俩中在 客户端存储数据库的方法:localStorage 和 sessionStorag ...
- HTML5本地存储——Web SQL Database与indexedDB
虽然在HTML5 WebStorage介绍了html5本地存储的Local Storage和Session Storage,这两个是以键值对存储的解决方案,存储少量数据结构很有用,但是对于大量结构化数 ...
随机推荐
- ActiveMQ_Linux安装
首先ActiveMQ查看你需要的版本 官网:http://activemq.apache.org/ 我这里选择的是:apache-activemq-5.14.0-bin.tar.gz 然后在linux ...
- FocusBI: SQL Server内核
关注微信公众号:FocusBI 查看更多文章:加QQ群:808774277 获取学习资料和一起探讨问题. <商业智能教程>pdf下载地址 链接:https://pan.baidu.com/ ...
- 本地IDC机房数据库容灾解决方案
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由腾讯云数据库 TencentDB 发表于云+社区专栏 作者介绍:李明,腾讯云数据库架构师华南区负责人,曾在某专业数据库服务商.51jo ...
- DDD中的EFCore
EFCore在DDD中的使用 在DDD中,我们对聚合根的操作都会通过仓储去获取聚合实例. 因为聚合根中可能会含有实体属性,值对象属性,并且,在DDD中,我们所设计的领域模型都是充血模型.所以,在对聚合 ...
- bzoj 5372: [Pkusc2018]神仙的游戏
Description 小D和小H是两位神仙.他们经常在一起玩神仙才会玩的一些游戏,比如"口算一个4位数是不是完全平方数". 今天他们发现了一种新的游戏:首先称s长度为len的前缀 ...
- Fatal error: Call-time pass-by-reference has been removed in *****.php on line 18
问题描述:最近刚刚将php升级到5.4.13,但是打开一个页面的时候出现报错:Fatal error: Call-time pass-by-reference has been removed in ...
- AngularJS的基础知识
一.AngularJS指令与表达式 [AngularJS常用指令]1.ng-app:声明Angular所管辖的区域,一般写在body或HTML上,原则上一个页面只有一个.2.ng-model:把元素值 ...
- webservice随记
WebService:跨平台.系统.跨语言间相互调用 CXF:Axis(Apache)-> Axis2(Apache)XFire -> CXF(Celtrix + XFire)(Apach ...
- Spring.Net IOC基本应用和在MVC4中的应用
1.Spring.Net的IOC简单应用 新建一个解决方案添加一个控制台应用程序和一个业务层一个业务层的接口层,通过配置,让控制台应用程序调业务层的方法 1)新建如下图所示,BLL为业务层,通过Spr ...
- Spring学习笔记:Spring整合Mybatis学习PPT(三:整合思路)
三.Spring-Mybatis的整合思路