HTML5实例教程之html 5 当地数据信息库(Web Sql Da

日期:2021-02-26 类型:科技新闻 

关键词:如何创建网站,免费网站建站,网站建设文章,网站建设7个基本流程,自动建站

Web SQL数据信息库API具体上并不是HTML5标准的构成一部分,而是独立的标准。它根据1套API来控制顾客端数据信息库。Safari、Chrome、Firefox、Opera等流行访问器都早已适用Web SQL Database。HTML5的Web SQL Databases确实很引诱人,当你发现能够用与mysql查寻1样的查寻句子来实际操作当地数据信息库时,你会发现这物品挺趣味的。今日,大家1起来掌握HTML 5的Web SQL Database API。

下面将11将详细介绍如何建立开启数据信息库,建立表,加上数据信息,升级数据信息,删掉数据信息,删掉表 。

先详细介绍3个关键方式

1、openDatabase:这个方式应用现了解据库或建立新数据信息库建立数据信息库目标。

2、transaction:这个方式容许大家依据状况操纵事务管理递交或回退。

3、executeSql:这个方式用于实行真正的SQL查寻。

第1步:开启联接并建立数据信息库

拷贝编码
编码以下:

var dataBase = openDatabase("student", "1.0", "学员表", 1024 * 1024, function () { });
if (!dataBase) {
alert("数据信息库建立不成功!");
} else {
alert("数据信息库建立取得成功!");
}


解释1下openDatabase方式开启1个早已存在的数据信息库,假如数据信息库不存在,它还能够建立数据信息库。几个主要参数实际意义各自是:
1,数据信息库名字。
2,版本号号 现阶段为1.0,无论他,写死就OK。
3,对数据信息库的叙述。
4,设定数据信息的尺寸。
5,回调函数涵数(可省略)。
第一次启用时建立数据信息库,之后便是创建联接了。
建立的数据信息库就存在当地,相对路径以下:
C:\Users\Administrator\AppData\Local\Google\Chrome\User Data\Default\databases\http_localhost_4987 。
建立的是1个sqllite数据信息库,能够用SQLiteSpy开启文档,能够看到里边的数据信息。SQLiteSpy是1个翠绿色手机软件,能够百度搜索1下免费下载详细地址或SQLiteSpy官方免费下载:SQLiteSpy。

 
第2步:建立数据信息表

拷贝编码
编码以下:

this.createTable=function() {
dataBase.transaction( function(tx) {
tx.executeSql(
"create table if not exists stu (id REAL UNIQUE, name TEXT)",
[],
function(tx,result){ alert('建立stu表取得成功'); },
function(tx, error){ alert('建立stu表不成功:' + error.message);
});
});
}


解释1下,
executeSql涵数有4个主要参数,其实际意义各自是:
1)表明查寻的标识符串,应用的SQL語言是SQLite 3.6.19。
2)插进到查寻中问号所属处的标识符串数据信息。
3)取得成功时实行的回调函数涵数。回到两个主要参数:tx和实行的結果。
4)1个不成功时实行的回调函数涵数。回到两个主要参数:tx和不成功的不正确信息内容。

 

第3步:实行删改改查

1)加上数据信息:

拷贝编码
编码以下:

this.insert = function () {
dataBase.transaction(function (tx) {
tx.executeSql(
"insert into stu (id, name) values(?, ?)",
[id, '徐明祥'],
function () { alert('加上数据信息取得成功'); },
function (tx, error) { alert('加上数据信息不成功: ' + error.message);
} );
});


 
2)查寻数据信息

拷贝编码
编码以下:

this.query = function () {
dataBase.transaction(function (tx) {
tx.executeSql(
"select * from stu", [],
function (tx, result) { //实行取得成功的回调函数涵数
//在这里对result 做你要想做的事儿吧...........
},
function (tx, error) {
alert('查寻不成功: ' + error.message);
} );
});
}


解释1下
上面编码中实行取得成功的回调函数涵数有1主要参数result。

result:查寻出来的数据信息集。其数据信息种类为 SQLResultSet ,就好似C#中的DataTable。
SQLResultSet 的界定为:

拷贝编码
编码以下:

interface SQLResultSet {
readonly attribute long insertId;
readonly attribute long rowsAffected;
readonly attribute SQLResultSetRowList rows;
};

在其中最关键的特性—SQLResultSetRowList 种类的 rows 是数据信息集的“行” 。
rows 有两个特性:length、item 。
故,获得查寻結果的某1行某1列的值 :result.rows[i].item[fieldname]  。

3)升级数据信息


拷贝编码
编码以下:

this.update = function (id, name) {
dataBase.transaction(function (tx) {
tx.executeSql(
"update stu set name = ? where id= ?",
[name, id],
function (tx, result) {
},
function (tx, error) {
alert('升级不成功: ' + error.message);
});
});
}


4)删掉数据信息


拷贝编码
编码以下:

this.del = function (id) {
dataBase.transaction(function (tx) {
tx.executeSql(
"delete from stu where id= ?",
[id],
function (tx, result) {
},
function (tx, error) {
alert('删掉不成功: ' + error.message);
});
});
}



5)删掉数据信息表

拷贝编码
编码以下:

this.dropTable = function () {
dataBase.transaction(function (tx) {
tx.executeSql('drop table stu');
});
}


web sql database 删改改查的demo,猛点免费下载。