Draft
This page is not complete.
Important: The synchronous version of the IndexedDB API was originally intended for use only with Web Workers, and was eventually removed from the spec because its need was questionable. It may however be reintroduced in the future if there is enough demand from web developers.
The DatabaseSync
interface in the IndexedDB API represents a synchronous connection to a database.
Method overview
IDBObjectStoreSync createObjectStore (in DOMString |
IDBObjectStoreSync openObjectStore (in DOMString name, in optional unsigned short mode) raises (IDBDatabaseException); |
void removeObjectStore (in DOMString storeName) raises (IDBDatabaseException); |
void setVersion (in DOMString version); |
IDBTransactionSync transaction (in optional DOMStringList storeNames, in optional unsigned int timeout) raises (IDBDatabaseException); |
Attributes
Attribute | Type | Description |
---|---|---|
description |
readonly DOMString |
The human-readable description of the connected database. |
name |
readonly DOMString |
The name of the connected database. |
objectStores |
readonly DOMStringList |
The names of the object stores that exist in the connected database. |
version |
readonly DOMString |
The version of the connected database. Has the null value when the database is first created. |
Methods
createObjectStore()
Creates and returns a new object store with the given name in the connected database.
IDBObjectStoreSync createObjectStore( in DOMString name, in DOMString keypath, in optional boolean autoIncrement ) raises (IDBDatabaseException);
Parameters
- name
- The name of a new object store.
- keypath
- The key path used by the new object store. If a null path is specified, then the object store does not have a key path, and uses out-of-line keys.
- autoIncrement
- If true, the object store uses a key generator; if false, it does not use one.
Returns
IDBObjectStoreSync
- An object to access the newly created object store.
Exceptions
This method can raise an IDBDatabaseException with the following code:
CONSTRAINT_ERR
- If an object store with the same name (based on case-sensitive comparison) already exists in the connected database.
openObjectStore()
Opens the object store with the given name in the connected database using the specified mode.
IDBObjectStoreSync openObjectStore ( in DOMString name, in optional unsigned short mode ) raises (IDBDatabaseException);
Parameters
- name
- The name of the object store to open.
- mode
- The mode that is used to access the object store.
Returns
IDBObjectStoreSync
- An object to access the opened object store.
Exceptions
This method can raise an IDBDatabaseException with the following code:
NOT_FOUND_ERR
- If an object store with the given name (based on case-sensitive comparison) already exists in the connected database.
removeObjectStore()
Destroys an object store with the given name, as well as all indexes that reference that object store.
void removeObjectStore ( in DOMString storeName ) raises (IDBDatabaseException);
Parameters
- storeName
- The name of an existing object store to remove.
Returns
void
Exceptions
This method can raise an IDBDatabaseException with the following code:
- If the object store with the given name (based on case-sensitive comparison) does not exist in the connected database.
setVersion()
Sets the version of the connected database.
void setVersion ( in DOMString version );
Parameters
Returns
void
- version
- The version to store in the database.
transaction()
Creates and returns a transaction, acquiring locks on the given database objects, within the specified timeout duration, if possible.
IDBTransactionSync transaction ( in optional DOMStringList storeNames, in optional unsigned int timeout ) raises (IDBDatabaseException);
Parameters
- storeNames
- The names of object stores and indexes in the scope of the new transaction.
- timeout
- The interval that this operation is allowed to take to acquire locks on all the objects stores and indexes identified in
storeNames
.
Returns
IDBTransactionSync
- An object to access the newly created transaction.
Exceptions
This method can raise an IDBDatabaseException with the following code:
TIMEOUT_ERR
- If reserving all the database objects identified in
storeNames
takes longer than thetimeout
interval.