provides a connection to a database; you can use an Database object to
open a transaction on your database then create, manipulate, and delete
objects (data) in that database. The interface provides the only way to get
and manage versions of the database.
provides asynchronous access to an index in a database. An index is a kind
of object store for looking up records in another object store, called the
referenced object store. You use this interface to retrieve data. [...]
static, asynchronous transaction on a database using event handler
attributes. All reading and writing of data is done within transactions. You
actually use Database to start transactions and Transaction to set the
mode of the transaction (e.g. is it readonly or readwrite), and access an
ObjectStore to make a request. You can also use it to abort transactions.