HTML5--Web SQL数据库基础

Web Storage存储本地数据的方法目前可以在许多主流浏览器、平台与设备上实现,与之相关的API也已经标准化,但是,WebStorage存储空间是有5MB,键值存储的方式带来诸多不便,未来本地存储也不仅仅是这一中方法。其中最为熟知的就是WebSQL数据库,它内置SQLite数据库,对数据库的操作可以通过调用executeSql()方法实现,允许使用JavaScript代码控制数据库。

打开与创建数据库
如果要通过WebDb进行本地数据的存储,首先需要打开或创建一个数据库,打开或创建数据库的API是openDatabase,其调用的代码如下所示:
openDatabase(DbName,DBVersion,DBDescribe,DBSize,Callback());
参数分别表示数据库名称,版本号,描述,数据库大小(字节为单位),创建或打开成功后执行的回调函数。
var db;//全局变量
//创建数据库
function createDB(){
//参数:数据库名称,版本号,数据库描述,大小(单位字节),回调函数
    db=openDatabase('Student','1.0','StuManage',2*1024*1024,function(){
$$("result").innerHTML="成功创建数据库";
});
var sql="create table if not exists student"
+"(sno unique,name text,sex text,score int)";
db.transaction(
       function(tx){
         //执行创建表语句
tx.executeSql(sql);
       },
       function(){ 
         //调用函数
Status_Handle("事务执行出错");
       },
       function(){
Status_Handle("事务执行成功");
       })
}

执行事务
通过数据库对象中的transaction方法执行事务处理。每一个事物处理请求都作为数据库的独立操作,这有效地避免在处理数据时发生冲突。调用语法格式如下:
transaction(TransCallback,ErrorCallback,SuccessCallback);
参数分别表示事务回调函数,出错回调函数,成功回调函数。
代码如上图绿色文字。

插入数据
executeSql(strSQL,[arguments],SuccessCallback,ErrorCallback);
参数分别是待执行的语句,需要的实参,成功回调函数,失败回调函数
HTML5--Web <wbr>SQL数据库基础
HTML5--Web SQL数据库基础_第1张图片

要执行查询、提交、更新、删除等操作都可以通过执行相应的sql语句实现。
以查询为例说明。
var sql="select * from student wheresno<>?";
var sno="这里是输入的学号";
if(sno!=null){
    sql="select* from student where sno=?"
}
db.transaction(
    function(tx){
       tx.executeSql(sql,[sno],function(tx,rs){
          for(var i=0;i
               var name=rs.rows.item(i).name;
            }
        }
    }
)

你可能感兴趣的:(数据库,html5,本地存储,websql)