-
Notifications
You must be signed in to change notification settings - Fork 16
API Connection
A Connection provides a single connection to a database source. It provides the ability to interact with a database through a common set of commands.
new Connection( connection: string|ConnectionObject, driver?: DatabaseDriver )
Type: string or ConnectionObject
Defines the connection parameters, including driver name, host name, credentials, and database.
Type: DatabaseDriver
An optional parameter. Used to pass in a specific driver class. If this is specified, the driver name is ignored in the connection argument.
Type: string
Access: read only
Returns the derived connection URL string. Whether the connection is parsed from a passed string, or derived from a ConnectionObject, this property is always made up of the underlying ConnectionObject properties. This means it may be different from the passed value.
Type: DatabaseDriver
Access: read only
Returns a reference to the class used for the database driver.
Syntax
connection.createStatement( sql: string ) => Statement
Type: string
The SQL string in the dialect of the underlying driver, with the exception that the parameter token is always a question mark ?
.
Type: Statement
A statement object which will be used for further database actions. This statement is reusable.
Syntax
connection.prepareStatement( sql: string ) => PreparedStatement
Type: string
The SQL string in the dialect of the underlying driver, with the exception that the parameter token is always a question mark ?
.
Type: PreparedStatement
A prepared statement object which will be used for further database actions. This statement is reusable.
This is the preferred method for creating reusable statements as it forces the preparation of the statement which significantly reduces the risk of SQL injection attacks.
Syntax
connection.close() => Promise<boolean>
Closes the current connection, or releases it back to the pool if it was opened from a StaticPool or DynamicPool
Type: Promise
Returns a boolean promise that always resolves to true unless an error occurs in which case the promise is rejected.
Syntax
connection.isTransactionSupported() => boolean
Indicates whether the underlying driver supports transactions.
Type: boolean
Returns true if the driver supports transactions, false if it does not or if the driver is a pre 1.3.0 driver which does not indicate transaction support.
Syntax
connection.inTransaction() => boolean
Indicates whether the underlying driver is currently in a transaction.
Type: boolean
Returns true if the driver is currently in a transaction, false if it is not in a transaction or does not support transactions.
Syntax
connection.beginTransaction() => Promise<boolean>
Begins a transaction on the underlying driver. Returns a promise to indicate if the transaction was successfully started.
Type: Promise
Returns a boolean promise which resolves to true if a transaction was started and false if one was not started. Transactions can fail to start if the driver does not support transactions.
Syntax
connection.commit() => Promise<boolean>
Commits a transaction on the underlying driver. Returns a promise to indicate if the transaction was successfully committed.
Type: Promise
Returns a boolean promise which resolves to true if a transaction was committed and false if one was not committed. Transactions can fail to commit if no transaction was started, or if the driver does not support transactions.
Syntax
connection.rollback() => Promise<boolean>
Rolls back a transaction on the underlying driver. Returns a promise to indicate if the transaction was successfully rolled back.
Type: Promise
Returns a boolean promise which resolves to true if a transaction was rolled back and false if one was not rolled back. Transactions can fail to rolled back if no transaction was started, or if the driver does not support transactions.