欢迎来到天天文库
浏览记录
ID:21858908
大小:1.67 MB
页数:107页
时间:2018-10-20
《第9讲 数据库web sql》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第9讲数据库WebSQL传统Web应用程序将大多数据都存储在Web服务器端的数据库中,本地存储的能力很弱。而频繁地访问数据库服务器获取数据,不但会增加网络流量,而且影响应用程序的效率。HTML5的本地存储能力得到了很大的提高,不但可以像传统Web应用程序那样将数据存储在文件中,而且还支持本地的轻型数据库。本章知识点1webSQLDatabaseAPI2IndexedDB1webSQLDatabaseAPI1判断浏览器是否支持webSQLDatabaseAPI2新建数据库3执行SQL语句1判断浏览器是否支持we
2、bSQLDatabaseAPI使用windows.openDatabase属性可以打开本数据库,并返回连接句柄。如果该句柄为null、undefined则说明不支持使用webSQLDatabaseAPI操作本地数据库,反之则支持。下面定义一个openDatabase()函数,用于打开本地数据库:functiongetOpenDatabase(){try{//如果支持则返回数据库连接句柄if(!!window.openDatabase){returnwindow.openDatabase;}else{retur
3、nundefined;}}catch(e){returnundefined;}}【例9】在网页中定义一个按钮,单击此按钮时,会检测浏览器是否支持webSQLDatabaseAPI。定义按钮的代码如下:检测浏览器是否支持webSQLDatabaseAPI【例9】单击按钮check将调用check()函数。check()函数的定义代码如下:functioncheck
4、(){if(getOpenDatabase()==undefined){alert("您的浏览器不支持webSQLDatabaseAPI。");}else{alert("您的浏览器支持webSQLDatabaseAPI。");}}2新建数据库webSQLDatabaseAPI在中并不包括专门用于创建数据库的API,但是以指定的数据库名为参数调用openDatabase()函数时,如果自定的数据库名不存在,则会自动创建它。带参数的openDatabase()函数的语法如下:数据库连接句柄=op
5、enDatabase(数据库名,版本号,数据库显示名称,估计容量);【例10】创建数据库mydatabase的代码如下:functioncreateDB(){if(window.openDatabase==undefined){alert("您的浏览器不支持webSQLDatabaseAPI。");}else{vardbs=window.openDatabase('mydatabase','v1.0','SavedataDB',100);if(dbs
6、){alert('创建成功。');}else{alert('打开数据库失败。');}}}3执行SQL语句使用transaction()函数可以执行SQL语句,语法如下:数据库连接句柄.transaction(function(tx){tx.executeSql('CREATETABLEIFNOTEXISTSLOGS(idunique,log)');});transaction()函数的参数是一个回调函数,使用回调函数的参数tx来调用executeSql()函数可以执行SQL语句。下面分别介绍
7、几个常用的SQL语句。1.创建表语句CREATETABLE表是数据库中最重要的逻辑对象,是存储数据的主要对象。在设计数据库结构时,很重要的工作就是设计表的结构。关系型数据库的表由行和列组成。CREATETABLE语句用于创建表CREATETABLEIFNOTEXISTS表名(列名1数据类型字段属性,列名2数据类型字段属性,……列名n数据类型字段属性)【例11】functioncreateTable(){if(window.openDatabase==
8、undefined){alert("您的浏览器不支持webSQLDatabaseAPI。");}else{vardbs=window.openDatabase('mydatabase','v1.0','SavedataDB',100);if(dbs){dbs.transaction(function(tx){tx.executeSql("CREATETABLEIFNOTEXISTSt(idUNIQU
此文档下载收益归作者所有