欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

HTML5 Web Sql DataBase 数据库

程序员文章站 2022-06-11 19:21:36
...

web database 介绍

Web Sql 数据库API实际上不是H5规范的组成部分,而是单独的规范。
它通过一套API来操纵客户端的数据库。
Safari、Chrome、FireFox、Opera等主流浏览器都已经支持Web SQL Database。

HTML Web Database 操作使用

Web Sql 数据库有三个核心方法:

openDatabase()

此方法创建数据库对象,既可以使用已有的数据库,也可以创建新的数据库

var db = window.openDatabase(arg1,arg2,arg3,arg4);
  • arg1:数据库名
  • arg2:数据库版本
  • arg3:数据库描述
  • arg4:数据库大小(单位:字节)
  • db: 返回的一个对象链接

transaction()

此方法可以用于控制事务处理,执行提交操作或回滚操作。

db.transaction(callback(obj))

function callback(tx){
	
}
  • db: 链接的数据库对象
  • callback:回调函数,参数是数据库对象内容

executeSQL

此方法用于执行sql语句


db.transaction(callback(obj))

function callback(tx){
	tx.executeSQL(sql语句);
}

示例

<script type="text/javascript">
var db = window.openDatabase("test", "1.0","数据库描述",20000);
if(db) {
    alert("新建数据库成功!"); 
}else{
	alert("您的浏览器不支持database,请升级浏览器!");
}
	 
db.transaction(function(tx) {
	tx.executeSql("CREATE TABLE test (id int UNIQUE, title TEXT, timestamp REAL)");
});

db.transaction(function(tx) {
	tx.executeSql("INSERT INTO test (title, timestamp) values(?, ?)", ["WEB Database", new Date().getTime()], null, null);
});

//db.transaction(function(tx) {
//	tx.executeSql("DROP TABLE test");
//})

//db.transaction(function(tx) {
//	tx.executeSql("update test set title=? where title = 'fsafdsaf'",['xp'],null,null);
//});

db.transaction(function(tx) {
	tx.executeSql("SELECT * FROM test", [],  
 	function(tx, res) {
		 for(var i = 0; i < res.rows.length; i++){ 
			document.write('<b>' + res.rows.item(i)['title'] + '</b><br />'); 
		} 
	}, function(){
		alert("error");
	}); 
}); 
</script>