HTML5-SQLLite连接
2024-09-29 08:14:24
1.代码部分(可直接粘贴到html文件中运行)
<body onload="init()">
姓名:<input type="text" id="name"><br>
留言:<input type="text" id="memo"><br>
<input type="button" value="保存" onclick="saveData()">
<hr>
<table id="datatable" border="1"></table>
<p id="msg"></p> <script>
var datatable = null;
// C:\Users\Administrator\AppData\Local\Google\Chrome\User Data\Default\databases
var db = openDatabase('MyData', '', 'my database', 2*1024*1024);
// 初始化数据
function init(){
datatable = document.getElementById('datatable');
showAllData();
} // 展示一行数据
function showData(row){
var tr = document.createElement('tr');
var td1 = document.createElement('td');
td1.innerHTML = row.name;
var td2 = document.createElement('td');
td2.innerHTML = row.message;
var td3 = document.createElement('td');
var t = new Date();
t.setTime(row.time);
td3.innerHTML = t.toLocaleDateString() + " " + t.toLocaleTimeString();
tr.appendChild(td1);
tr.appendChild(td2);
tr.appendChild(td3);
datatable.appendChild(tr);
} // 展示所有数据
function showAllData(){
db.transaction(function(tx){
tx.executeSql('create table if not exists MyData(name TEXT,message TEXT, time INTEGER)',[]);
tx.executeSql('select * from MyData',[],function(tx, rs){
removeAllData();
for(var i = 0; i < rs.rows.length; i++){
showData(rs.rows[i]);
}
})
})
} // 清空所有数据
function removeAllData(){
for(var i = datatable.childNodes.length - 1; i >= 0; i--){
datatable.removeChild(datatable.childNodes[i]);
}
var tr = document.createElement('tr');
var th1 = document.createElement('th');
var th2 = document.createElement('th');
var th3 = document.createElement('th');
th1.innerHTML = '姓名';
th2.innerHTML = '留言';
th3.innerHTML = '时间';
tr.appendChild(th1);
tr.appendChild(th2);
tr.appendChild(th3);
datatable.appendChild(tr);
} // 增加数据
function addData(name, message, time){
db.transaction(function(tx){
tx.executeSql('insert into MyData values(?,?,?)',[name,message,time],
function(tx, rs){
console.log('成功保存数据!');
},function(tx, error){
console.log(error.source+"::"+error.message);
})
})
} // 保存数据
function saveData(){
var name = document.getElementById('name').value;
var memo = document.getElementById('memo').value;
var time = new Date().getTime();
addData(name,memo,time);
showAllData();
}
</script>
</body>
2.查看对应数据库(此处使用了Navicat进行连接)
(1)首先找到对应sql文件
我本地Chrome是直接c盘安装,db文件目录是:C:\Users\Administrator\AppData\Local\Google\Chrome\User Data\Default\databases
Databases.db是数据库的一些信息,
file__0目录下是代码中create的表数据。
然后使用Navicat连接:
该文件使用Navicat打开后,如下图:
接下来就可以继续进行其他操作了~
参考书籍:《HTML5与CSS3权威指南》8.2 本地数据库
参考文章:HTML5本地数据库(SQLite)示例
感谢
最新文章
- html框架练习
- TextInputLayout的注意事项
- 移动端rem布局实践
- html5 form表单常用标签
- Java实验五
- IO流的练习4 —— 键盘录入学生成绩信息,进行排序后存入文本中
- oracle split
- Apache,PHP,MySQL的安装,配置
- python删除指定位置 2个元素
- 查找mysql数据库文件的存放位置
- 潜在语义分析Latent semantic analysis note(LSA)原理及代码
- Nyoj 天下第一(spfa)
- D5
- prototype属性的理解
- Android Studio 如何使用jni
- Keepalived详细介绍简介
- kafka 集群搭建
- 用python实现一个简单的词云
- mysql如何查看索引使用情况以及优化 - guols0612
- C#语言Devdevexpress控件chart在C/S框架中的使用