Web SQL Database的基本使用方法

时间:2022-01-27 09:00:07
      1. 打开数据库
      2. 开始事务处理
      3. 执行SQL
      4. 处理SQL的执行结果

        首先:检查是否支持Web SQLDatabase if(window.openDatabase==undefined){alert("浏览器不支持Web Database!");return;  }
        第二:打开数据库 window.openDatabase(数据库名,版本号,显示名,预计占用空间);  数据库名:指定数据库的名称  版本号:指定数据模式的版本号  显示名:调试时候使用的数据库略称 预计占用空间:以字节单位指定数据库预计会占用的空间 db=window.openDatabase("testdb","1.0","sample",1024*1024);
        第三:开始事务处理 打开数据库之后,在进行任何数据库操作时调用transaction()方法。在transaction()方法的callback函数内执行具体的SQL  transaction (Database对象).transaction(callback,onError,onSuccess); callback:事务处理内执行的处理 onError:事务处理发生错误时候的处理 onSuccess:事务处理成功的处理例如  db.transaction(function(txt)){//事务处理中执行的处理  }
        第四:执行SQL 在事务处理方法中执行SQL。调用callback函数参数(tx)的方法来执行SQL (SQLTransaction对象).executeSql(sql,args,onSuccess,onError);  上述参数的具体含义  sql:指定的SQL语句  args:替换SQL中? onSuccess:成功执行SQL时候的处理 onError:SQL执行失败时候的处理   db.transaction(function(tx)){       var sec=newDate().getTime();       var str=newDate().toString();tx.executeSql("insert into table(sec,str)values(?,?)",[sec,str]);  }      第五:处理SQL的执行结果 处理SELECT语句的执行结果再onSuccess()函数中  functiononSuccess(tx,resultSet){  }  tx:获得SQLTransaction对象  resultSet:获得SQLResultSet对象
        SQLResultSet对象包含的属性 insertId:执行INSERT语句返回的ID rowsAffected:执行SQL语句返回的处理行数 rows:执行SELECT语句返回的结果集合    另外rows中含有如下方法和属性  item(index):指定index从结果集合中取出记录  length :获得记录数
       db.transaction(function(tx)){    tx.executeSql("select * fromtime",[],function(tx,rs){//处理并显示执行结果       for(vari=0;i<rs.rows.length;i++){    varrow=rs.rows.item(i);         document.write(row.str+"<br>");       }     });  }