Deleting the database, an object store and data
Delete an entire IndexedDB database
//first import deleteDb from `idb`
import { deleteDB } from 'idb'
//or
import { deleteDB } from 'https://cdn.jsdelivr.net/npm/idb@7/+esm'
//then:
const dbName = 'mydbname'
await deleteDB(dbName)
To delete data in an object store
We use a transaction:
(async () => {
//...
const dbName = 'mydbname'
const storeName = 'store1'
const version = 1
const db = await openDB(dbName, version, {
upgrade(db, oldVersion, newVersion, transaction) {
const store = db.createObjectStore(storeName)
}
})
const tx = await db.transaction(storeName, 'readwrite')
const store = await tx.objectStore(storeName)
const key = 'Hello again'
await store.delete(key)
await tx.done
})()
Lessons in this unit:
0: | Introduction |
1: | Loading the idb library |
2: | Creating a database and a store |
3: | Adding data into a store |
4: | Retriving data from a store |
5: | ▶︎ Deleting data |
6: | Migrations |
7: | Unique keys |