• 提升品牌形象
  • 最新HTML5+Css3网站制作技术
  • 完全区分与同行的震撼视觉体验
  • 自动适应平板、手机及电脑屏幕
  • 详细介绍
  • 企业网站入门首选
  • 强大丰富的系统功能
  • 超过1000种页面风格
  • 每年仅需¥1500元,两年仅需¥2000元
  • 详细介绍
  • 4000/4006两种开头选择
  • 智能占线、断线呼转
  • 高达300组可呼转号码
  • 智能语音导航
  • 详细介绍

If you have any question,please contact with us.

  • 昆明网站建设-在线客服

    蛋切刀 一指
    妖异眼瞳
  • 昆明网站设计-服务电话

    4000-555-94113099998627
  • 昆明网站建设-联系地址

    昆明市官渡区岔街
    鸿运都市别墅5单元1101

HTML5 实战-微设计创意工坊 为您提供 昆明网站制作 昆明网站建设 昆明网站设计 云南网站建设 昆明网络公司

  • Home
  • /
  • HTML5 实战
8.3 WebSQL数据库基础

8.3 WebSQL数据库基础

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

8.3.1 打开与创建数据库

WebDB可以实现数据的本地存储,它提供了关系数据库的基本功能,可以存储页面中交互的、复杂的数据;它既可以保存数据,也能缓存从服务器获取的数据。WebDB通过事务驱动,实现对数据的管理,因此,它可以支持多浏览器的并发操作,而不发生存储时的冲突。

如果要通过WebDB进行本地数据的存储,首先需要打开或创建一个数据库,打开或创建数据库的API是openDatabase,其调用的代码如下所示:

openDatabase(DBName,DBVersion,DBDescribe,DBSize,Callback());

其中,参数DBName表示数据库名称,参数DBVersion表示版本号,参数DBDescribe表示对数据库的描述,参数DBSize表示数据库的大小,单位为字节,如果是2MB,必须写成2*1024*1024,参数Callback()表示创建或打开数据库成功后执行的一个回调函数。

调用该方法时,如果指定的数据库名存在,则打开该数据库;否则,新创建一个指定名称的空数据库。

下面通过实例8-7介绍使用openDatabase打开与创建数据库的过程。

8.3.2 执行事务

当打开/创建数据库后,就可以使用数据库对象中的transaction方法执行事务处理。每一个事务处理请求都作为数据库的独立操作,这有效地避免在处理数据时发生冲突。其调用的语法格式如下:

transaction(TransCallback,ErrorCallback,SuccessCallback);

其中,参数TransCallback表示事务回调函数,可以写入需要执行的SQL语句;参数ErroiCallback表示执行SQL语句出错时的回调函数,参数SuccessCallback表示执行SQL语句成功时的回调函数。

下面通过实例8-8介绍使用transaction()方法执行事务的过程。

8.3.3 插入数据

既然可以通过事务处理的方式执行SQL语句创建新表,那么,如果想要给新建的表插入记录,同样也可以通过执行相应的SQL语句来实现。实现的关键除调用事务方法外,还要调用一个执行SQL语句的方法executeSql,其调用的格式如下所示:

executeSql(strSQL,[Arguments],SuccessCallback,ErrorCallback);

其中,参数strSQL表示需要执行的SQL语句,参数Arguments表示语句需要的实参,参数SuccessCallback表示SQL语句执行成功时的回调函数,参数ErrorCallback表示SQL语句执行出错时的回调函数。

在使用executeSql方法执行SQL语句时,允许使用“?”作为语句中的形参,与形参相对应的实参放置在第二个参数Arguments中。例如,以下语句是正确的:

executeSql("insertintoStulnfovalues(?,?,?,?)",

            ["1234","张三",”男","0"],,);

“?”形参的数量必须与对应实参完全一致,如果SQL语句中没有“?”形参,第二个参数Arguments中不允许有任何内容出错,否则,执行SQL语句时将会报错。

下面通过实例8-9介绍使用executeSqlO方法插入记录的过程。

8.3.4 数据管理

上一节介绍了使用executeSql()方法执行SQL语句,从而实现向WebDB中“Stulnfo”表插入数据的过程。其实,只要符合规范的SQL语句都可以通过executeSqlO方法执行,例如“select”、“update”、“delete”组成的SQL语句,都可以带“?”形参,通过executeSql()方法执行。实例8-10将在实例8-9的基础上进行扩展,实现对学生数据信息的增加、查询、更新、删除操作,从而真正实现数据管理的功能。

本文由昆明网站建设,昆明微设计整理发布,转载请保留链接


  • If you have any question,please contact with us.

  • QQ在线客服

    蛋切刀
    可乐上瘾
    妖异眼瞳
  • 服务电话

    4000-555-94113099998627
  • 联系地址

    昆明市官渡区岔街
    鸿运都市别墅5单元1101