webSQL 增删改查

 转载于:https://www.cnblogs.com/liuhao-web/p/7866032.html
/**
*数据库操作辅助类,定义对象、数据操作方法都在这里定义
*/
const conf = {
dbName: 'h5ds',
/*数据库名*/
version: '2.0',
/*数据库版本*/
dbDesc: 'h5ds 本地本地数据库',
/*数据库描述*/
dbSize: 100 * 1024 /*数据库大小 kb*/
} /**
* 打开数据库
* @returns dataBase:打开成功 or 打开失败
*/
export function openDB() {
/*数据库有就打开 没有就创建*/
let dataBase = window.openDatabase(conf.dbName, conf.version, conf.dbDesc, conf.dbSize, function() {});
if (dataBase) {
console.log("websql 数据库创建/打开成功!");
} else {
console.log("websql 数据库创建/打开失败!");
}
window.WEBSQL_DB = dataBase;
}; /**
* 新建数据库里面的表单
* @param tableName:表单名
*/
export function creatImgTable(tableName) {
var creatTableSQL = 'CREATE TABLE IF NOT EXISTS ' + tableName + ' (rowid INTEGER PRIMARY KEY AUTOINCREMENT, NAME text,AGE text,HEIGHT text,WEIGTH text)';
WEBSQL_DB.transaction(function(ctx, result) {
ctx.executeSql(creatTableSQL, [], function(ctx, result) {
alert("表创建成功 " + tableName);
}, function(tx, error) {
alert('创建表失败:' + tableName + error.message);
});
});
}
/**
* 往表单里面插入数据
* @param tableName:表单名
* @param NAME:姓名
* @param AGE:年龄
* @param HEIGHT:身高
* @param WEIGTH:体重
*/
export function insterData(tableName, NAME, AGE, HEIGHT, WEIGTH) {
var insterTableSQL = 'INSERT INTO ' + tableName + ' (NAME,AGE,HEIGHT,WEIGTH) VALUES (?,?,?,?)';
WEBSQL_DB.transaction(function(ctx) {
ctx.executeSql(insterTableSQL, [NAME, AGE, HEIGHT, WEIGTH], function(ctx, result) {
console.log("插入" + tableName + NAME + "成功");
},
function(tx, error) {
console.error('插入失败: ' + error.message);
});
});
}
/**
* 获取数据库一个表单里面的所有数据
* @param tableName:表单名
* 返回数据集合
*/
export function getAllData(tableName) {
var selectALLSQL = 'SELECT * FROM ' + tableName;
WEBSQL_DB.transaction(function(ctx) {
ctx.executeSql(selectALLSQL, [], function(ctx, result) {
console.log('查询成功: ' + tableName + result.rows.length);
var len = result.rows.length;
for (var i = 0; i < len; i++) {
console.log("NAME = " + result.rows.item(i).NAME);
console.log("AGE = " + result.rows.item(i).AGE);
console.log("HEIGHT = " + result.rows.item(i).HEIGHT);
console.log("WEIGTH = " + result.rows.item(i).WEIGTH);
console.log("-------- 我是分割线 -------");
}
},
function(tx, error) {
console.error('查询失败: ' + error.message);
});
});
}
/**
* 获取数据库一个表单里面的部分数据
* @param tableName:表单名
* @param name:姓名
*/
export function getOneData(tableName, name) {
var selectSQL = 'SELECT * FROM ' + tableName + ' WHERE NAME = ?'
WEBSQL_DB.transaction(function(ctx) {
ctx.executeSql(selectSQL, [name], function(ctx, result) {
console.log('查询成功: ' + tableName + result.rows.length);
var len = result.rows.length;
for (var i = 0; i < len; i++) {
console.log("NAME = " + result.rows.item(i).NAME);
console.log("AGE = " + result.rows.item(i).AGE);
console.log("HEIGHT = " + result.rows.item(i).HEIGHT);
console.log("WEIGTH = " + result.rows.item(i).WEIGTH);
}
},
function(tx, error) {
console.error('查询失败: ' + error.message);
});
});
}
/**
* 删除表单里的全部数据
* @param tableName:表单名
*/
export function deleteAllDataFromTable(tableName) {
var deleteTableSQL = 'DELETE FROM ' + tableName;
localStorage.removeItem(tableName);
WEBSQL_DB.transaction(function(ctx, result) {
ctx.executeSql(deleteTableSQL, [], function(ctx, result) {
console.log("删除表成功 " + tableName);
}, function(tx, error) {
console.error('删除表失败:' + tableName + error.message);
});
});
}
/**
* 根据name删除数据
* @param tableName:表单名
* @param name:数据的姓名
*/
export function deleteOneDataFromTable(tableName, name) {
var deleteDataSQL = 'DELETE FROM ' + tableName + ' WHERE NAME = ?';
localStorage.removeItem(tableName);
WEBSQL_DB.transaction(function(ctx, result) {
ctx.executeSql(deleteDataSQL, [name], function(ctx, result) {
console.log("删除成功 " + tableName + name);
}, function(tx, error) {
console.error('删除失败:' + tableName + name + error.message);
});
});
}
/**
* 根据name修改数据
* @param tableName:表单名
* @param name:姓名
* @param age:年龄
*/
export function updateOneData(tableName, name, age) {
var updateDataSQL = 'UPDATE ' + tableName + ' SET AGE = ? WHERE NAME = ?';
WEBSQL_DB.transaction(function(ctx, result) {
ctx.executeSql(updateDataSQL, [age, name], function(ctx, result) {
console.log("更新成功 " + tableName + name);
}, function(tx, error) {
console.error('更新失败:' + tableName + name + error.message);
});
});
}

webSQL 增删改查的更多相关文章

  1. HBuilder webApp开发 Websql增删改查操作

    来源:http://blog.csdn.net/zhuming3834/article/details/51471434 这段时间公司要求我们做原生iOS和安卓的都转做H5开发APP,使用的工具HBu ...

  2. Dapper逆天入门~强类型,动态类型,多映射,多返回值,增删改查+存储过程+事物案例演示

    Dapper的牛逼就不扯蛋了,答应群友做个入门Demo的,现有园友需要,那么公开分享一下: 完整Demo:http://pan.baidu.com/s/1i3TcEzj 注 意 事 项:http:// ...

  3. ASP.NET从零开始学习EF的增删改查

           ASP.NET从零开始学习EF的增删改查           最近辞职了,但是离真正的离职还有一段时间,趁着这段空档期,总想着写些东西,想来想去,也不是很明确到底想写个啥,但是闲着也是够 ...

  4. 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(9)-MVC与EasyUI结合增删改查

    系列目录 文章于2016-12-17日重写 在第八讲中,我们已经做到了怎么样分页.这一讲主要讲增删改查.第六讲的代码已经给出,里面包含了增删改,大家可以下载下来看下. 这讲主要是,制作漂亮的工具栏,虽 ...

  5. 通过Java代码实现对数据库的数据进行操作:增删改查

    在写代码之前,依然是引用mysql数据库的jar包文件:右键项目-构建路径-设置构建路径-库-添加外部JAR 在数据库中我们已经建立好一个表xs :分别有xuehao  xingming    xue ...

  6. Hibernate全套增删改查+分页

    1.创建一个web工程 2.导入jar包 3.创建Student表 4.创建实体类 package com.entity; public class Student { private Integer ...

  7. 使用 Json.Net 对Json文本进行 增删改查

    JSON 已经成为当前主流交互格式, 如何在C#中使用 Json.Net 对Json文本进行 增删改查呢?见如下代码 #region Create (从零创建) public static strin ...

  8. yii2 增删改查

    自己总结的yii2 advanced 版本的简单的增删改查,希望对大家有所帮助 1.gii生成的actionCreate()方法中 获取插入语句的id $id = $model->attribu ...

  9. Batis-iBatis基本操作(增删改查)

    Batis-iBatis基本操作(增删改查) 时间 2014-04-10 17:55:20  CSDN博客 原文  http://blog.csdn.net/mazhaojuan/article/de ...

随机推荐

  1. [细品java]ThreadLocal源码学习

    ThreadLocal是线程局部变量,其中保存了特定于该线程的值.每个线程都拥有一份独立的副本值,即每个线程修改变量值不影响其他线程该变量的副本值.这些特定于线程的值保存在Thread对象中,当线程终 ...

  2. GraphQL & REST API

    GraphQL & REST API GraphQL https://mp.weixin.qq.com/s/X-jm7jLXWmMmLBVgHfkRiQ https://webapplog.c ...

  3. 我项目中使用userData的实例 UserData.js

    关于userData的介绍,请参见http://hi.baidu.com/kaisep/blog/item/1da9a3312d2da5a15edf0e87.htmlhttp://hi.baidu.c ...

  4. BZOJ3329 Xorequ(数位dp+矩阵快速幂)

    显然当x中没有相邻的1时该式成立,看起来这也是必要的. 于是对于第一问,数位dp即可.第二问写出dp式子后发现就是斐波拉契数列,矩阵快速幂即可. #include<iostream> #i ...

  5. 【NOI】荷马史诗

    追逐影子的人,自己就是影子 ——荷马 Allison最近迷上了文学.她喜欢在一个慵懒的午后,细细地品上一杯卡布奇诺,静静地阅读她爱不释手的<荷马史诗>.但是由<奥德赛>和< ...

  6. 洛谷 P2022 有趣的数 解题报告

    P2022 有趣的数 题目描述 让我们来考虑1到N的正整数集合.让我们把集合中的元素按照字典序排列,例如当N=11时,其顺序应该为:1,10,11,2,3,4,5,6,7,8,9. 定义K在N个数中的 ...

  7. 毕业设计预习:SM3密码杂凑算法基础学习

    SM3密码杂凑算法基础学习 术语与定义 1 比特串bit string 由0和1组成的二进制数字序列. 2 大端big-endian 数据在内存中的一种表示格式,规定左边为高有效位,右边为低有效位.数 ...

  8. tomcat和servlet的基本了解

    看不清的可以下载到本地观看

  9. Windows环境下,将Django部署到Apache Web Server

    在Windows上部署Django(用mod_wsgi)会出现各种奇怪的问题,现简单记录下配置过程及遇到的错误及解决方法. 环境搭建                                   ...

  10. C++中#define用法

    http://blog.sina.com.cn/s/blog_686188ef0100klku.html #define是C语言中提供的宏定义命令,其主要目的是为程序员在编程时提供一定的方便,并能在一 ...