IDBDatabase: phương thức deleteObjectStore()
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Note: This feature is available in Web Workers.
Phương thức deleteObjectStore() của giao diện IDBDatabase phá hủy object store có tên đã cho trong cơ sở dữ liệu đang kết nối, cùng với mọi index tham chiếu đến nó.
Giống như IDBDatabase.createObjectStore, phương thức này chỉ có thể được gọi trong một transaction versionchange.
Cú pháp
deleteObjectStore(name)
Tham số
name-
Tên của object store bạn muốn xóa. Tên phân biệt hoa thường.
Giá trị trả về
Không có (undefined).
Ngoại lệ
InvalidStateErrorDOMException-
Được ném ra nếu phương thức không được gọi từ callback của transaction
versionchange. TransactionInactiveErrorDOMException-
Được ném ra nếu một request được thực hiện trên cơ sở dữ liệu nguồn không tồn tại, ví dụ đã bị xóa hoặc gỡ bỏ.
NotFoundErrorDOMException-
Được ném ra khi cố xóa một object store không tồn tại.
Ví dụ
const dbName = "sampleDB";
const dbVersion = 2;
const request = indexedDB.open(dbName, dbVersion);
request.onupgradeneeded = (event) => {
const db = request.result;
if (event.oldVersion < 1) {
db.createObjectStore("store1");
}
if (event.oldVersion < 2) {
db.deleteObjectStore("store1");
db.createObjectStore("store2");
}
// v.v. cho version < 3, 4…
};
Thông số kỹ thuật
| Specification |
|---|
| Indexed Database API 3.0> # ref-for-dom-idbdatabase-deleteobjectstore①> |
Tương thích trình duyệt
Xem thêm
- Dùng IndexedDB
- Bắt đầu transaction:
IDBDatabase - Dùng transaction:
IDBTransaction - Thiết lập một dải khóa:
IDBKeyRange - Truy xuất và thay đổi dữ liệu của bạn:
IDBObjectStore - Dùng cursor:
IDBCursor - Ví dụ tham khảo: To-do Notifications (Xem ví dụ trực tiếp).