html5本地存储(二)--- SQLList
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了html5本地存储(二)--- SQLList,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3469字,纯文字阅读大概需要5分钟。
内容图文
![html5本地存储(二)--- SQLList](/upload/InfoBanner/zyjiaocheng/1190/d5e1a78ff9794db69e260e3cfbcc4bf6.jpg)
html5内置了2种本地数据库,一是被称为“SQLLite”,可以通过SQL语言来访问文件型SQL数据库。二是被称为“indexedDB” 的NoSQL类型的数据库
这篇主要讲SQLLite
在js中使用SQLLite数据库,分两个步骤
一、创建访问数据库
使用openDatabase方法创建
var db = openDatabase(‘mybd‘,1.0,"testDB",2*1024*1024)
该方法创建一个访问数据库对象,该方法有4个参数
第一个参数:数据库名
第二个参数:版本号
第三个参数:数据库描述
第四个参数:数据库大小
二、使用事务处理
使用transaction方法执行事务处理, 该方法使用一个回调函数作为参数
db.transaction(function(tx) { tx.executeSql(‘INSERT INTO MsgData VALUES(?, ?, ?)‘, [name, message, time], function(tx, rs) { alert("成功保存数据!"); }, function(tx, error) { alert(error.source + "::" + error.message); }); });
executeSql方法有4个参数
第一个参数:需要执行的SQL语句
第二个参数:SQL语句中所有使用到的参数数组。在这个方法中,sql语句的参数用“?”代替,然后将参数组成数组放到第二个参数中
第三个参数:执行sql语句成功调用的回调函数
第四个语句:执行sql语句失败调用的回调函数
查看示例:使用SQLLite实现web留言本
![技术分享](/img/jia.gif)
![技术分享](/img/jian.gif)
1 <!DOCTYPE html> 2 <head> 3 <meta charset="UTF-8"> 4 <title>使用数据库实现Web留言本</title> 5 <script type="text/javascript"> 6//打开数据库 7var datatable = null; 8var db = openDatabase(‘MyData‘, ‘‘, ‘My Database‘, 102400); 9 10//初始化 11function init() { 12 datatable = document.getElementById("datatable"); 13 showAllData(); 14 } 15//擦除表格中当前显示的数据 16function removeAllData() { 17for(var i = datatable.childNodes.length - 1; i >= 0; i--) { 18 datatable.removeChild(datatable.childNodes[i]); 19 } 20var c = ""; 21 c += "<tr>"; 22 c += "<td>姓名</td>"; 23 c += "<td>留言</td>"; 24 c += "<td>留言时间</td>"; 25 c += "</tr>"; 26 datatable.innerHTML = c; 27 28 } 29//显示数据 30function showData(row) { 31var tr = document.createElement(‘tr‘); 32var t = new Date(); 33 t.setTime(row.time); 34 35var c = ""; 36 c += "<td>"+ row.name +"</td>"; 37 c += "<td>"+ row.message +"</td>"; 38 c += "<td>"+ t.toLocaleDateString() + " " + t.toLocaleTimeString(); +"</td>"; 39 40 tr.innerHTML = c 41 42 datatable.appendChild(tr); 43 } 44//显示全部数据 45function showAllData() { 46//执行事务处理 47 db.transaction(function(tx) { 48//用回调函数来访问数据库 49 tx.executeSql(‘CREATE TABLE IF NOT EXISTS MsgData(name TEXT, message TEXT, time INTEGER)‘, []); 50 tx.executeSql(‘SELECT * FROM MsgData‘, [], function(tx, rs) { 51 removeAllData(); 52for(var i = 0; i < rs.rows.length; i++) { 53 showData(rs.rows.item(i)); 54 } 55 }); 56 }); 57 } 58//添加数据 59function addData(name, message, time) { 60 61 db.transaction(function(tx) { 62 tx.executeSql(‘INSERT INTO MsgData VALUES(?, ?, ?)‘, [name, message, time], function(tx, rs) { 63 alert("成功保存数据!"); 64 }, 65function(tx, error) { 66 alert(error.source + "::" + error.message); 67 }); 68 }); 69 } 70//保存数据 71function saveData() { 72var name = document.getElementById(‘name‘).value; 73var memo = document.getElementById(‘memo‘).value; 74var time = new Date().getTime(); 75 addData(name, memo, time); 76 showAllData(); 77 } 78 </script> 79 </head> 80 81 <body onload="init();"> 82 <h1>使用数据库实现Web留言本</h1> 83 <table> 84 <tr> 85 <td>姓名:</td> 86 <td><input type="text" id="name"></td> 87 </tr> 88 <tr> 89 <td>留言:</td> 90 <td><input type="text" id="memo"></td> 91 </tr> 92 <tr> 93 <td></td> 94 <td><input type="button" value="保存" onclick="saveData();"></td> 95 </tr> 96 </table> 97 <hr> 98 <table id="datatable" border="1"></table> 99 <p id="msg"></p> 100 </body> 101102 </html>
原文:http://www.cnblogs.com/qqing/p/6831261.html
内容总结
以上是互联网集市为您收集整理的html5本地存储(二)--- SQLList全部内容,希望文章能够帮你解决html5本地存储(二)--- SQLList所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。