The deleteObjectStore()
method of the IDBDatabase
interface destroys the object store with the given name in the connected database, along with any indexes that reference it.
As with IDBDatabase.createObjectStore
, this method can be called only within a versionchange
transaction.
Note: This feature is available in Web Workers.
Syntax
dbInstance.deleteObjectStore(name);
Parameters
name
- The name of the object store you want to delete.
Exceptions
This method may raise a DOMException
of one of the following types:
Exception | Description |
---|---|
InvalidStateError
|
Occurs if the method was not called from a versionchange transaction callback. For older WebKit browsers, you must call first.
|
TransactionInactiveError
|
Occurs if a request is made on a source database that doesn't exist (e.g. has been deleted or removed.) In Firefox previous to version 41, an InvalidStateError was raised in this case as well, which was misleading; this has now been fixed (see bug 1176165.)
|
NotFoundError
|
You are trying to delete an object store that does not exist. Names are case sensitive. |
Example
var dbName = "sampleDB";
var dbVersion = 2;
var request = indexedDB.open(dbName, dbVersion);
request.onupgradeneeded = function(e) {
var db = request.result;
if (e.oldVersion < 1) {
db.createObjectStore("store1");
}
if (e.oldVersion < 2) {
db.deleteObjectStore("store1");
db.createObjectStore("store2");
}
// etc. for version < 3, 4...
};
Specification
Specification | Status | Comment |
Indexed Database API 2.0The definition of 'deleteObjectStore()' in that specification. | Recommendation | |
Indexed Database API DraftThe definition of 'deleteObjectStore()' in that specification. | Recommendation |
Browser compatibility
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Update compatibility data on GitHub
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
deleteObjectStore
|
Chrome Full support 24 Full support 24 No support 23 — 24 Prefixed' Implemented with the vendor prefix: webkit |
Edge
Full support 12 |
Firefox Full support 16 Full support 16 No support 10 — 16 Prefixed' Implemented with the vendor prefix: moz |
IE
Partial support 10 |
Opera
Full support 15 |
Safari
Full support 7 |
WebView Android
Full support Yes |
Chrome Android
Full support 25 |
Firefox Android
Full support 22 |
Opera Android
Full support 14 |
Safari iOS
Full support 8 |
Samsung Internet Android
Full support 1.5 |
Legend
- Full support
- Full support
- Partial support
- Partial support
- Requires a vendor prefix or different name for use.'
- Requires a vendor prefix or different name for use.
See also
- Using IndexedDB
- Starting transactions:
IDBDatabase
- Using transactions:
IDBTransaction
- Setting a range of keys:
IDBKeyRange
- Retrieving and making changes to your data:
IDBObjectStore
- Using cursors:
IDBCursor
- Reference example: To-do Notifications ([[../../../../../../../mdn.github.io/to-do-notifications/index|view example live]].)
IDBDatabase.deleteObjectStore() by Mozilla Contributors is licensed under CC-BY-SA 2.5.