/**
* Created with JetBrains WebStorm.
* User: Administrator
* Date: 13-11-29
* Time: 上午10:24
* To change this template use File | Settings | File Templates.
*/
//phoneGap存储:
//storage:PhoneGap的实现完全兼容W3C规范
//file
//storage:
//创建数据库
/**
* 返回值:databases(sql lite)数据库
* name:数据库名
* version:版本
* display_name:数据库的显示名
* size:大小,byte单位
*/
//var dbShell = window.openDatabase(name, version, display_name, size); //Android iPhone bb
//数据库操作方法
//transaction:运行一个数据库事务。
/**
* populateDB:事务要执行的函数
* errorCB:失败的回调
* successCB:成功的回调
*/
// db.transaction(populateDB, errorCB, successCB);
/*
function populateDB(tx) {
//executeSql方法:
//返回值:SQLResultSet
//属性:
//insertId:插入到数据库的行记录的行ID。[译注:如果插入多行的时候,返回最后一个行的ID]
//rowAffected:影响的行数。
//rows:是一个SQLResultSetRowList对象,表示返回的多条记录。如果没有返回任何记录,则此对象为空。
// SQLResultSetRowList
//属性:length: SQL查询所返回的记录行数。
//方法:item:根据指定索引返回一个行记录的JavaScript对象。
//参数:sql语句 [] 成功的回调 失败的回调
tx.executeSql('SELECT * FROM DEMO', [], querySuccess, errorCB);
tx.executeSql('DROP TABLE DEMO IF EXISTS');
tx.executeSql('CREATE TABLE IF NOT EXISTS DEMO (id unique, data)');
tx.executeSql('INSERT INTO DEMO (id, data) VALUES (1, "First row")');
tx.executeSql('INSERT INTO DEMO (id, data) VALUES (2, "Second row")');
}
//-------------------------
// 查询成功后调用的回调函数
//参数:事务 结果集
function querySuccess(tx, results) {
// 因为没有插入记录,所以返回值为空
console.log("Insert ID = " + results.insertId);
// 因为这是一条查询语句所以返回值为0
console.log("Rows Affected = " + results.rowAffected);
// 返回查询到的记录行数量
console.log("Insert ID = " + results.rows.length);
for (var i=0; i<len; i++){
console.log("Row = " + i + " ID = " + results.rows.item(i).id + " Data = " + results.rows.item(i).data);
}
}
//------------
// 事务执行出错后调用的回调函数
function errorCB(err) {
console.log("Error processing SQL: "+err.code);
}
function errorCB(err) {
alert("Error processing SQL: "+err.code);
}
function successCB() {
alert("success!");
}
var db = window.openDatabase("Database", "1.0", "PhoneGap Demo", 200000);
db.transaction(populateDB, errorCB, successCB);
*/
//changeVersion:该方法允许脚本执行以下原子操作:校验数据库的版本号并更新版本号以完成架构更新。
// db.changeVersion("1.0", "1.1");
/*
var db = window.openDatabase("Database", "1.0", "PhoneGap Demo", 200000);
db.changeVersion("1.0", "1.1");
*/
/**
属性:SQLError
code: 一个在下面常量列表中定义好的错误代码c。
message:关于此错误的说明。
常量:
SQLError.UNKNOWN_ERR:未知错误
SQLError.DATABASE_ERR:数据库错误
SQLError.VERSION_ERR:版本错误
SQLError.TOO_LARGE_ERR:数据集过大错误
SQLError.QUOTA_ERR:超过数据库配额错误
SQLError.SYNTAX_ERR:语法错误
SQLError.CONSTRAINT_ERR:约束错误
*/
///
//localstorage
/*
//方法
key:返回指定位置的键的名称。
getItem: 返回指定键所对应的记录。
setItem:存储一个键值对。
removeItem:删除指定键对应的记录。
clear:删除所有的键值对。
*/
phoneGap 存储
最新推荐文章于 2021-05-26 13:55:34 发布