接上一章:
数据库版本更新时创建一个db:
var mydb = {
name:"myIndexeddb",
version:1,
db:null
};//创建一个全局对象
var stus = [
{id:1,name:"小A",age:18},
{id:2,name:"小B",age:21},
{id:3,name:"小C",age:22}
];//创建一个学生表list
//初始化创建一个数据库和student表
fucntion init(name, version) {
var version = version || 1;//判断是否传入了version
var connection = window.indexedDB.open(name, version);//打开一个数据库
connection.onerror = function(e) {};//失败调用
connection.onsuccess = function(e) {
mydb.db = e.target.result;//连接成功将db赋值给全局对象
};
connection.onupgradeneeded = function(e) {//更新版本/创建的时候调用
var db = e.target.result;
if(!db.objectStoreNames.contains("student") {//判断是否存在student表
var store = db.createObjectStore("student",{keyPaht:"id"});//不存在则创建
store.createIndex("index_name", "name",{unique:true});//创建姓名索引,唯一
store.createIndex("index_age", "age",{unique:false});//创建年龄索引,不唯一
}
};
}
//保存数据的方法
function save(db, storeName) {//将stus表信息存入
var transaction = db.transanction(storeName, "readwrite");//获取db的事务,设置事务权限为读写
var store = transaction.objectStore(storeName);//获得store
for (var i = 0, l = stus.length; i < l;i++) {
store.add(stus[i]);//通过store依次存入
}
}