let indexDB = window.indexedDB.open('newIndexDB', 1);
indexDB.onsuccess = (res) => {
let db = res.target.result;
let transaction = db.transaction(['customers'], 'readwrite');
let obj = transaction.objectStore('customers');
let request = obj.add({
id: new Date().getTime(),
name: '李四',
age: 12,
email: '317133022@qq.com'
});
request.onsuccess = (res) => {
};
let store = db.transaction(['customers'], 'readwrite').objectStore('customers');
let obj_id = store.get(1682316992459);
obj_id.onsuccess = (res) => {
console.log(res.target.result)
};
let obj_update = store.put({ id: 222, name: 'acacac', age: 31313, email: '131313313022@qq.com' });
obj_update.onsuccess = (res) => {
console.log('更新:'+res);
if (res.target.result) {
console.log(res);
}
};
let obj_del = store.delete(222);
obj_del.onsuccess = (res) => {
console.log('删除:'+res);
};
let obj_get = store.index("name").get('李四');
obj_get.onsuccess = (res) => {
console.log('根据索引获取值:');
console.log(res.target.result)
};
let obj_get = store.index("name");
let obj_map = obj_get.openCursor(IDBKeyRange.only('acacac'));
obj_map.onsuccess = (res) =>{
let result_R = res.target.result
if(result_R){
console.log(result_R.value)
result_R.continue()
}else{
throw new Error("没有更多数据了")
}
}
};
indexDB.onerror = () => {
console.log('打开数据库失败');
};
indexDB.onupgradeneeded = (res) => {
console.log(res);
var db = res.target.result;
if (!db.objectStoreNames.contains('customers')) {
var target = db.createObjectStore('customers', {
keyPath: 'id'
});
target.createIndex('name', 'name', { unique: false });
console.log(target);
}
console.log(db);
};