html5引入Web SQL Database概念,它使用 SQL 来操纵客户端数据库的 API,这些 API 是异步的,其实就是一个SQLlite。
Web SQL Database 规范中定义的三个核心方法:
openDatabase:这个方法使用现有数据库或新建数据库来创建数据库对象transaction:这个方法允许我们根据情况控制事务提交或回滚
executeSql:这个方法用于执行SQL 查询
示例代码:
<script type="text/javascript">效果
// 1、创建或打开数据库(openDatabase)
var db = openDatabase('dbname', '1.0', 'discription', 2 * 1024); // 目前测试只有Chrome和webkit内核的浏览器支持此函数
//openDatabase方法中五个参数分别为:数据库名、版本号(注意这里是字符串)、描述、数据库大小、创建回调函数,回调函数是可选参数。
//2.执行SQL语句
db.transaction(function (tx) {
tx.executeSql('CREATE TABLE IF NOT EXISTS t1 (id unique, log)', [], function(tx, result) {
}, function(tx, error) {
console.log('Create table t1 error: ' + error.message);
});
tx.executeSql('INSERT INTO t1 (id, log) VALUES (?, ?)', [4, 'bags'], function(tx, result) {
console.log('Rows affacted: ' + result.rowsAffected);
}, function(tx, error) {
console.log('Error: ' + error.message);
});
});
//executeSql函数参数的意思分别是:1.要执行的SQL语句;2.SQL语句中的占位符替换内容(数组);3.执行成功的回调函数;4.执行失败的回调函数;
//3.处理查询结果
//
db.transaction(function (tx) {
tx.executeSql('SELECT * FROM t1', [], function(tx, result) {
var length = result.rows.length; // 查询出的记录数
for (var i = 0; i < length; i++) {
console.log(result.rows.item(i));
}
}, function(tx, error) {
console.log('Qruey table t1 error: ' + error.message);
});
});
</script>
参考:https://jingyan.baidu.com/article/20095761cdd34ecb0721b42b.html
网友回复
python如何实现torrent的服务端进行文件分发p2p下载?
如何在浏览器中录制摄像头和麦克风数据为mp4视频保存下载本地?
go如何编写一个类似docker的linux的虚拟容器?
python如何写一个bittorrent的种子下载客户端?
ai能通过看一个网页的交互过程视频自主模仿复制网页编写代码吗?
ai先写功能代码通过chrome mcp来进行测试功能最后ai美化页面这个流程能行吗?
vue在手机端上下拖拽元素的时候如何禁止父元素及body的滚动导致无法拖拽完成?
使用tailwindcss如何去掉响应式自适应?
有没有直接在浏览器中运行的离线linux系统?
nginx如何保留post或get数据进行url重定向?