您的当前位置:首页正文

HTML5 Web SQL Database 数据库

2024-11-08 来源:个人技术集锦

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

HTML5 Web Database 操作使用
Web SQL数据库有三个核心方法:
1)打开数据库openDatabase()方法:
此方法创建数据库对象,既可以使用已有的数据库,也可以创建新的数据库。

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

3)执行SQL命令executeSql()方法:
此方法用于执行SQL查询。

1)打开数据库openDatabase()方法:
此方法创建数据库对象,既可以使用已有的数据库,也可以创建新的数据库。

window.openDatabase("mydata", "1.0", "数据库描述",  20000 );

返回值:返回一个对象链接
参数说明:数据库名,数据库版本,描述,数据库大小单位(字节)

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

database.transaction (   函数(obj) )

链接的数据库对象,参数为函数,接收数据库对象内容
如:

  db.transaction(  function(tx) {                
  });

3)执行SQL命令executeSql()方法:
此方法用于执行SQL查询。

tx.executeSQL (   SQL语句   )

如:

  db.transaction(  function(tx) {           

      tx.executeSQL(“SQL语句”)

  });

实例:

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>html5-dataBase</title>
</head>


<body>
<script type="text/javascript">
var db = window.openDatabase("mydata", "1.0","数据库描述",20000);
//window.openDatabase("数据库名字", "版本","数据库描述",数据库大小);
if(db)  
     alert("新建数据库成功!"); 

db.transaction(function(tx) {
    tx.executeSql("CREATE TABLE test (id int UNIQUE, mytitle TEXT, timestamp REAL)");
});

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

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

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

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