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
网友回复
如何编写一个chrome插件实现多线程高速下载大文件?
cdn版本的vue在网页中出现typeerror错误无法找到错误代码位置怎么办?
pywebview能否使用webrtc远程控制共享桌面和摄像头?
pywebview6.0如何让窗体接受拖拽文件获取真实的文件路径?
如何在linux系统中同时能安装运行apk的安卓应用?
python有没有离线验证码识别ocr库?
各家的ai图生视频及文生视频的api价格谁最便宜?
openai、gemini、qwen3-vl、Doubao-Seed-1.6在ui截图视觉定位这款哪家更强更准?
如何在linux上创建一个沙箱隔离的目录让python使用?
pywebview如何使用浏览器自带语音识别与webspeech 的api?