indexedDB 批量新增資料
通過物件倉庫的add()方法可以為其新增資料,操作比較簡單。
本文通過一段程式碼例項介紹一下如何批量新增資料,同樣簡單,需要的朋友僅做參考。
程式碼例項如下:
[HTML] 純文字檢視 複製程式碼執行程式碼<!doctype html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <script> let students=[ { id:1001, name:"張三", age:21, sex:"男" },{ id:1002, name:"李四", age:20, sex:"女" },{ id:1003, name:"王五", age:19, sex:"女" } ]; let request = window.indexedDB.open("antzone", 1); request.onupgradeneeded = (ev) => { let db = ev.target.result; if (!db.objectStoreNames.contains('students')) { let objectStore = db.createObjectStore('students',{autoIncrement:true}); objectStore.createIndex("xingbie","sex",{ unique: false }); } } request.onsuccess = (ev) => { let db = ev.target.result; let transaction = db.transaction(['students'], 'readwrite'); let objectStore = transaction.objectStore('students'); for(let i=0;i<students.length;i++){ objectStore.add(students[i]); } } </script> </head> <body> <p>為物件倉庫批量新增資料</p> </body> </html>
程式碼執行效果截圖如下:
可以看到通過上述程式碼批量增加了三條資料,下面對程式碼進行一下簡單分析。
(1).開始定義了一組資料儲存在變數students中,非常簡單無需做過多介紹。
(2).window.indexedDB.open("antzone", 1)方法建立或者開啟名為"antzone"的資料庫。
(3).如果已經存在"antzone"資料庫,則將其開啟,否則建立對應名稱資料庫(觸發upgradeneeded事件)。
(4).upgradeneeded事件處理函式首先判斷"students"物件倉庫是否存在,如果不存在則建立。
(5).物件倉庫的主鍵是自增長的,索引名稱是"xingbie",對應的屬性是"sex"。
(6).如果資料庫是新建立並且一切順利,那麼會首先觸發upgradeneeded事件,然後再觸發success事件。
(7).如果資料庫已經存在,且開啟順利,會觸發success事件。
(8).在success事件處理函式中通過迴圈方式遍歷學生資訊,然後將其新增到物件倉庫中。
相關閱讀:
(1).建立於開啟資料庫參閱IndexedDB.open() 開啟與新建資料庫一章節。
(2).建立物件倉庫參閱createObjectStore() 建立物件倉庫一章節。
(3).建立索引參閱IDBObjectStore.createIndex() 索引一章節。
(4).事務參閱indexedDB transaction 事務一章節。
相關文章
- indexedDB 新增資料Index
- IndexedDB 資料庫新增資料Index資料庫
- oracle批量新增更新資料Oracle
- SQLServer批量新增資料庫SQLServer資料庫
- indexedDB 更新資料Index
- indexedDB 遍歷資料Index
- indexedDB 資料庫 索引Index資料庫索引
- indexedDB 資料庫版本Index資料庫
- indexedDB 查詢資料Index
- indexedDB 刪除資料Index
- IndexedDB 資料庫概述Index資料庫
- IndexedDB 資料庫用法Index資料庫
- indexedDB 資料庫主鍵Index資料庫
- indexedDB 刪除資料庫Index資料庫
- IndexedDB資料庫介紹Index資料庫
- indexedDB 通過索引查詢資料Index索引
- 前端的資料庫:IndexedDB入門前端資料庫Index
- indexedDB 刪除物件倉庫所有資料Index物件
- 瀏覽器資料庫 IndexedDB(一) 概述瀏覽器資料庫Index
- IndexedDB.open()開啟與新建資料庫Index資料庫
- IndexedDB.open() 開啟與新建資料庫Index資料庫
- 瀏覽器資料庫 IndexedDB 入門教程瀏覽器資料庫Index
- HTML5 進階系列:indexedDB 資料庫HTMLIndex資料庫
- 批量照片水印新增工具
- cacti批量新增監控
- mybatis插入資料、批量插入資料MyBatis
- 如何批量更新資料
- pymysql批量更新資料MySql
- 資料庫-批量更新資料庫
- oracle批量插入資料Oracle
- MyBatis 批量插入資料MyBatis
- MATLAB批量新增圖例Matlab
- nagios批量新增監控iOS
- 新增資料
- 批量下載SRR資料
- 批量新建資料夾並命名的辦法 如何批量新建很多資料夾
- Ibatis批量更新資料(mysql資料庫)BATMySql資料庫
- 批量刪除Oracle資料庫的資料Oracle資料庫