indexedDB 簡單使用

2021-10-07 17:52:01 字數 1967 閱讀 2462

indexeddb 打造靠譜 web 離線資料庫;

前端資料庫 indexeddb 簡介;

//資料庫配置

let db =

//資料倉儲物件(資料表)

const tablename =

'myobjectstore'

//暫時沒有什麼用處;

//模式封裝

const mode =

//開啟資料庫				引數:(dbname,dbver);

let request = indexeddb.

open

(db.name,db.ver)

;//開啟資料庫:成功事件

request.

onsuccess

= e =>

//開啟資料庫:失敗事件

request.

onerror

= e =>

//開啟資料庫:公升級事件

request.

onupgradeneeded

= e =>

//獲取資料例項;

let db = e.target.result; console.

log(

'connection success');

/*引數:(表名)*/

//建立物件倉庫(資料表,資料表的名字每個庫必須唯一不可以重複);

let objectstore = db.

createobjectstore

(tablename,);

//objectstore 的索引,等效於關係型資料庫中的表的字段

//只能在資料庫的 upgradeneeded 事件中處理

//為物件倉庫建立索引;引數(索引名字,object的屬性名[單個或一組...],配置)

//配置:unique(指定屬性的值是否唯一[不可重複的值]),multinentry:

// 用於對屬性值為陣列的資料進行檢索,如果為 true,則會檢查陣列中的每乙個值,否則只檢查整個陣列。

objectstore.

createindex

('name'

,'name',)

;

//引數:(資料庫名字)

let transaction = db.

transaction

(db.name,mode.or)

;//引數:(資料庫表)

let objectstore = transaction.

objectstore

(tablename)

;//curd:增刪改查的操作;

/* add();

put();

get();

delete();

*///get::獲取資料

let getrequest = objectstore.

get(

'100001');

getrequest.onsuccess = e =

>

//add::新增資料

let addrequest = objectstore.

add(

) addrequest.onsuccess = e =

>

//put::更新資料

let putrequest = objectstore.

put(

) putrequest.onsuccess = e=

>

//let delrequest = objectstore.

delete

('100001');

delrequest.

onsuccess

= e =>

IndexedDB 簡單封裝

indexeddb 瀏覽器資料庫,是乙個非關係型資料庫,資料形式使用的是json,indexeddb適合儲存大量資料,它的api是非同步呼叫的,當然他的api 也相對複雜。當然瀏覽器資料儲存 還有localstorage,cookies,web sql等 為什麼還再來乙個indexeddb。之前我在...

IndexedDB 簡單封裝

indexeddb 瀏覽器資料庫,是乙個非關係型資料庫,資料形式使用的是json,indexeddb適合儲存大量資料,它的api是非同步呼叫的,當然他的api 也相對複雜。當然瀏覽器資料儲存 還有localstorage,cookies,web sql等 為什麼還再來乙個indexeddb。之前我在...

html5 初試 indexedDB 推薦

indexeddb是儲存大量結構化資料的api,demo中用到的是非同步api,麻煩的就是所有對indexeddb的操作都會發生乙個非同步的 請求 只要熟悉了api操作起來也很簡單。大體流程是這樣 1.開啟資料庫 j ascript code複製內容到剪貼簿 程式設計客棧 這樣就 建立 連線 了乙個...