IDBDatabaseSync

草案
此页面不完整。

Important : The synchronous version of the IndexedDB API was originally intended for use only with Web 工作者 , 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.

DatabaseSync interface in the IndexedDB API represents a synchronous connection to a database .

Method overview

IDBObjectStoreSync createObjectStore (in DOMString name , in DOMString keypath, in optional boolean autoIncrement) raises ( IDBDatabaseException );
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 );

属性

属性 Type 描述
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.

方法

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);
					
参数
name
The name of a new object store.
keypath
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.
返回
IDBObjectStoreSync
An object to access the newly created object store.
异常

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);
					
参数
name
The name of the object store to open.
mode
The mode that is used to access the object store.
返回
IDBObjectStoreSync
An object to access the opened object store.
异常

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);
					
参数
storeName
The name of an existing object store to remove.
返回

void

异常

This method can raise an IDBDatabaseException with the following code:

NOT_FOUND_ERR
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
);
					
参数
返回

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);
					
参数
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 .
返回
IDBTransactionSync
An object to access the newly created transaction.
异常

This method can raise an IDBDatabaseException with the following code:

TIMEOUT_ERR
If reserving all the database objects identified in storeNames takes longer than the timeout interval.