Web SQL Database的基本使用方法

来源:互联网 发布:返利能看到淘宝订单吗 编辑:程序博客网 时间:2024/05/02 19:15
      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>");
             }   
        });
        }

        

        
0 0
原创粉丝点击