indexedDB 資料庫版本
關於資料庫版本在IndexedDB.open() 開啟與新建資料庫一章節已經介紹。
雖然比較簡單,但有些細節可能容易被忽略,所以本文再通過程式碼例項對其進行一下介紹。
一.版本變化:
版本變化大家應該都不陌生,比如最為熟悉的作業系統版本升級。
修改版本通常是在結構、程式碼或功能上有改動,indexedDB資料庫也是如此。
比如對資料庫物件倉庫的新增或者刪除,或者修改物件倉庫的索引。
資料庫資料的新增、刪除或者修改不在此列,有本質的區別。
二.版本號規則:
首先看一段程式碼例項:
[HTML] 純文字檢視 複製程式碼執行程式碼<!doctype html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <script> let request = window.indexedDB.open("antzone", 1); request.onupgradeneeded = (ev) => { let db = ev.target.result; if (!db.objectStoreNames.contains('person')) { let objectStore = db.createObjectStore('person', { keyPath: 'id' }); } } request.onsuccess = (ev) => { console.log("螞蟻部落"); } </script> </head> <body> <p>上述程式碼建立一個名為"antzone"</p> </body> </html>
程式碼分析如下:
(1).indexedDB.open方法第二個引數用於設定資料庫的版本,可以省略。
(2).引數是整數,規定小數可能會出現一些問題,且會自動轉換為最接近的整數。
(3).如果新建資料庫,且省略此引數,那麼預設值為1,否則版本為規定值。
(4).如果開啟資料庫,切省略此引數,那麼值為當前版本,如果規定,則值必須大於等於當前版本。
(5).大於當前版本,則會觸發upgradeneeded事件。
(6).在同一時刻只會存在一個版本資料庫,且資料庫版本變動只能增加不能減少。
最後總結:
(1).資料庫版本變更只能增加不能減少。
(2).同一時刻,只有存在一個資料庫版本。
(3).資料庫版本的改變,必定會觸發upgradeneeded事件,對於資料庫的修改就在此事件處理函式中進行。
(4).資料庫處於open狀態時,修改會被block,直到被close或reload之後,修改才會生效。
相關文章
- 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
- indexedDB 新增資料Index
- indexedDB 查詢資料Index
- indexedDB 遍歷資料Index
- indexedDB 刪除資料Index
- indexedDB 批量新增資料Index
- indexedDB 通過索引查詢資料Index索引
- IndexedDB 建立資料庫時使用自增的Key 更新資料庫遇到的問題的一點記錄Index資料庫
- 使用Flyway來管理資料庫版本資料庫
- 還原sql server 2000資料庫的坑,不同版本資料庫SQLServer資料庫
- 國產資料庫:達夢資料庫的幾個版本介紹資料庫
- Spring Boot Flyway管理資料庫版本 - josdemSpring Boot資料庫
- 資料庫版本管理工具Liquibase資料庫UI
- Flyway版本化管理資料庫指令碼資料庫指令碼
- TiDB資料庫left join與版本問題TiDB資料庫
- 1.4.1. 關於Oracle 資料庫版本號Oracle資料庫
- git針對指定資料夾建立版本庫Git
- Flyway讓資料庫版本管理更簡單資料庫
- SQLServer行版本資訊吃資料庫tempdb空間SQLServer資料庫
- android資料庫如何進行版本升級?架構之資料庫框架升級Android資料庫架構框架
- 資料庫版本管理工具Flyway應用資料庫
- Spring Boot 整合 Flyway 實現資料庫版本控制Spring Boot資料庫
- 1.4. 認識你的資料庫版本號資料庫
- 使用Java和Flyway進行資料庫版本控制Java資料庫
- 時序資料庫 TDengine 3.0.2.0 版本正式釋出資料庫
- IndexedDBIndex
- mpp 資料庫greenplum官方商業版本與開源版本的差異資料庫