|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.firebirdsql.jdbc.AbstractConnection
public abstract class AbstractConnection
The class AbstractConnection is a handle to a
FBManagedConnection.
| Field Summary | |
|---|---|
protected FBManagedConnection |
mc
|
protected InternalTransactionCoordinator |
txCoordinator
|
| Fields inherited from interface org.firebirdsql.jdbc.FirebirdConnection |
|---|
TPB_CONCURRENCY, TPB_CONSISTENCY, TPB_NO_REC_VERSION, TPB_NOWAIT, TPB_READ, TPB_READ_COMMITTED, TPB_REC_VERSION, TPB_WAIT, TPB_WRITE |
| Fields inherited from interface java.sql.Connection |
|---|
TRANSACTION_NONE, TRANSACTION_READ_COMMITTED, TRANSACTION_READ_UNCOMMITTED, TRANSACTION_REPEATABLE_READ, TRANSACTION_SERIALIZABLE |
| Constructor Summary | |
|---|---|
AbstractConnection(FBManagedConnection mc)
Create a new AbstractConnection instance based on a FBManagedConnection. |
|
| Method Summary | |
|---|---|
protected void |
addWarning(SQLWarning warning)
|
void |
clearWarnings()
Clears all warnings reported for this Connection object. |
void |
close()
Releases a Connection's database and JDBC resources immediately instead of waiting for them to be automatically released. |
void |
commit()
Makes all changes made since the previous commit/rollback permanent and releases any database locks currently held by the Connection. |
Blob |
createBlob()
This non-interface method is included so you can actually get a blob object to use to write new data into a blob field without needing a preexisting blob to modify. |
Statement |
createStatement()
Creates a Statement object for sending
SQL statements to the database. |
Statement |
createStatement(int resultSetType,
int resultSetConcurrency)
Creates a Statement object that will generate
ResultSet objects with the given type and concurrency. |
Statement |
createStatement(int resultSetType,
int resultSetConcurrency,
int resultSetHoldability)
Creates a Statement object that will generate
ResultSet objects with the given type, concurrency,
and holdability. |
TransactionParameterBuffer |
createTransactionParameterBuffer()
Create new instance of TransactionParameterBuffer. |
protected void |
finalize()
|
boolean |
getAutoCommit()
Gets the current auto-commit state. |
String |
getCatalog()
Returns the Connection's current catalog name. |
DatabaseParameterBuffer |
getDatabaseParameterBuffer()
Get database parameter buffer for this connection. |
GDSHelper |
getGDSHelper()
|
int |
getHoldability()
Retrieves the current holdability of ResultSet objects
created using this Connection object. |
GDS |
getInternalAPIHandler()
Get Firebird API handler (sockets/native/embeded/etc) |
IscDbHandle |
getIscDBHandle()
Get connection handle for direct Firebird API access |
String |
getIscEncoding()
Get the encoding that is being used for this connection. |
FirebirdLocalTransaction |
getLocalTransaction()
Returns a FBLocalTransaction instance that enables a component to demarcate resource manager local transactions on this connection. |
DatabaseMetaData |
getMetaData()
Gets the metadata regarding this connection's database. |
FBObjectListener.StatementListener |
getStatementListener()
|
int |
getTransactionIsolation()
Gets this Connection's current transaction isolation level. |
TransactionParameterBuffer |
getTransactionParameters(int isolationLevel)
Get transaction parameters for the specified transaction isolation level. |
Map |
getTypeMap()
Gets the type map object associated with this connection. |
SQLWarning |
getWarnings()
Returns the first warning reported by calls on this Connection. |
boolean |
inTransaction()
Check if this connection is currently involved in a transaction |
protected void |
invalidateSavepoints()
Invalidate all savepoints. |
boolean |
isClosed()
Tests to see if a Connection is closed. |
boolean |
isReadOnly()
Tests to see if the connection is in read-only mode. |
String |
nativeSQL(String sql)
Converts the given SQL statement into the system's native SQL grammar. |
CallableStatement |
prepareCall(String sql)
Creates a CallableStatement object for calling
database stored procedures. |
CallableStatement |
prepareCall(String sql,
int resultSetType,
int resultSetConcurrency)
Creates a CallableStatement object that will generate
ResultSet objects with the given type and concurrency. |
CallableStatement |
prepareCall(String sql,
int resultSetType,
int resultSetConcurrency,
int resultSetHoldability)
|
PreparedStatement |
prepareStatement(String sql)
Creates a PreparedStatement object for sending
parameterized SQL statements to the database. |
PreparedStatement |
prepareStatement(String sql,
int resultSetType,
int resultSetConcurrency)
Creates a PreparedStatement object that will generate
ResultSet objects with the given type and concurrency. |
PreparedStatement |
prepareStatement(String sql,
int resultSetType,
int resultSetConcurrency,
int resultSetHoldability)
|
PreparedStatement |
prepareStatement(String sql,
int resultSetType,
int resultSetConcurrency,
int resultSetHoldability,
boolean metaData)
|
void |
releaseSavepoint(FirebirdSavepoint savepoint)
Removes the given Savepoint object from the current
transaction. |
void |
rollback()
Drops all changes made since the previous commit/rollback and releases any database locks currently held by this Connection. |
void |
rollback(FirebirdSavepoint savepoint)
Undoes all changes made after the given Savepoint object
was set. |
void |
setAutoCommit(boolean autoCommit)
Sets this connection's auto-commit mode. |
void |
setCatalog(String catalog)
Sets a catalog name in order to select a subspace of this Connection's database in which to work. |
FirebirdSavepoint |
setFirebirdSavepoint()
Creates an unnamed savepoint in the current transaction and returns the new Savepoint object that represents it. |
FirebirdSavepoint |
setFirebirdSavepoint(String name)
Creates a savepoint with the given name in the current transaction and returns the new Savepoint object that represents it. |
void |
setHoldability(int holdability)
Changes the holdability of ResultSet objects
created using this Connection object to the given
holdability. |
void |
setManagedConnection(FBManagedConnection mc)
Set the FBManagedConnection around which this connection is
based. |
void |
setManagedEnvironment(boolean managedConnection)
|
void |
setReadOnly(boolean readOnly)
Puts this connection in read-only mode as a hint to enable database optimizations. |
void |
setTransactionIsolation(int level)
Attempts to change the transaction isolation level to the one given. |
void |
setTransactionParameters(int isolationLevel,
int[] parameters)
Set transaction parameters for the specified isolation level. |
void |
setTransactionParameters(int isolationLevel,
TransactionParameterBuffer tpb)
Set transaction parameters for the specified transaction isolation level. |
void |
setTransactionParameters(TransactionParameterBuffer tpb)
Set transaction parameters for the next transactions. |
void |
setTypeMap(Map map)
Installs the given type map as the type map for this connection. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface java.sql.Connection |
|---|
createArrayOf, createClob, createNClob, createSQLXML, createStruct, getClientInfo, getClientInfo, isValid, prepareStatement, prepareStatement, prepareStatement, releaseSavepoint, rollback, setClientInfo, setClientInfo, setSavepoint, setSavepoint |
| Methods inherited from interface java.sql.Wrapper |
|---|
isWrapperFor, unwrap |
| Field Detail |
|---|
protected FBManagedConnection mc
protected InternalTransactionCoordinator txCoordinator
| Constructor Detail |
|---|
public AbstractConnection(FBManagedConnection mc)
FBManagedConnection.
mc - A FBManagedConnection around which this connection is based| Method Detail |
|---|
public FBObjectListener.StatementListener getStatementListener()
public int getHoldability()
throws SQLException
FirebirdConnectionResultSet objects
created using this Connection object.
Method copied from the JDBC 3.0 specification.
getHoldability in interface ConnectiongetHoldability in interface FirebirdConnectionResultSet.HOLD_CURSORS_OVER_COMMIT or
ResultSet.CLOSE_CURSORS_AT_COMMIT
SQLException - if a database access occursFirebirdConnection.setHoldability(int),
ResultSet
public void setHoldability(int holdability)
throws SQLException
FirebirdConnectionResultSet objects
created using this Connection object to the given
holdability.
Method copied from the JDBC 3.0 specification.
setHoldability in interface ConnectionsetHoldability in interface FirebirdConnectionholdability - a ResultSet holdability constant; one of
ResultSet.HOLD_CURSORS_OVER_COMMIT or
ResultSet.CLOSE_CURSORS_AT_COMMIT
SQLException - if a database access occurs, the given parameter
is not a ResultSet constant indicating holdability,
or the given holdability is not supportedFirebirdConnection.getHoldability(),
ResultSetpublic void setManagedConnection(FBManagedConnection mc)
FBManagedConnection around which this connection is
based.
mc - The FBManagedConnection around which this connection is based
public IscDbHandle getIscDBHandle()
throws GDSException
GDSException - if handle needed to be created and creation failed
public GDS getInternalAPIHandler()
throws SQLException
SQLExceptionpublic DatabaseParameterBuffer getDatabaseParameterBuffer()
DatabaseParameterBuffer.
public void setTransactionParameters(int isolationLevel,
int[] parameters)
throws SQLException
FirebirdConnection
setTransactionParameters in interface FirebirdConnectionisolationLevel - JDBC isolation level.parameters - array of TPB parameters, see all TPB_* constants.
SQLException - if specified transaction parameters cannot be set.
public TransactionParameterBuffer getTransactionParameters(int isolationLevel)
throws SQLException
FirebirdConnection
getTransactionParameters in interface FirebirdConnectionisolationLevel - isolation level defined in the Connection
interface.
TransactionParameterBuffer containing current
transaction parameters.
SQLException - if error occured obtaining transaction parameters.
public TransactionParameterBuffer createTransactionParameterBuffer()
throws SQLException
FirebirdConnectionTransactionParameterBuffer.
createTransactionParameterBuffer in interface FirebirdConnectionTransactionParameterBuffer.
SQLException - if error occured during this operation.
public void setTransactionParameters(int isolationLevel,
TransactionParameterBuffer tpb)
throws SQLException
FirebirdConnection
setTransactionParameters in interface FirebirdConnectionisolationLevel - isolation level defined in the Connection
interface.tpb - instance of TransactionParameterBuffer with parameters
to set.
SQLException - if error occured during this operation.
public void setTransactionParameters(TransactionParameterBuffer tpb)
throws SQLException
FirebirdConnectionConnection.setTransactionIsolation(int)
is called.
Method cannot be called when transaction has already started.
setTransactionParameters in interface FirebirdConnectiontpb - instance of TransactionParameterBuffer with new
transaction parameters.
SQLException - if method is called within a transaction.
public Statement createStatement()
throws SQLException
Statement object for sending
SQL statements to the database.
SQL statements without parameters are normally
executed using Statement objects. If the same SQL statement
is executed many times, it is more efficient to use a
PreparedStatement object.
Result sets created using the returned Statement
object will by default have forward-only type and read-only concurrency.
createStatement in interface ConnectionSQLException - if a database access error occurs
public PreparedStatement prepareStatement(String sql)
throws SQLException
PreparedStatement object for sending
parameterized SQL statements to the database.
A SQL statement with or without IN parameters can be
pre-compiled and stored in a PreparedStatement object. This
object can then be used to efficiently execute this statement
multiple times.
Note: This method is optimized for handling
parametric SQL statements that benefit from precompilation. If
the driver supports precompilation,
the method prepareStatement will send
the statement to the database for precompilation. Some drivers
may not support precompilation. In this case, the statement may
not be sent to the database until the PreparedStatement is
executed. This has no direct effect on users; however, it does
affect which method throws certain SQLExceptions.
Result sets created using the returned PreparedStatement will have
forward-only type and read-only concurrency, by default.
prepareStatement in interface Connectionsql - a SQL statement that may contain one or more '?' IN
parameter placeholders
SQLException - if a database access error occurs
public CallableStatement prepareCall(String sql)
throws SQLException
CallableStatement object for calling
database stored procedures.
The CallableStatement object provides
methods for setting up its IN and OUT parameters, and
methods for executing the call to a stored procedure.
Note: This method is optimized for handling stored
procedure call statements. Some drivers may send the call
statement to the database when the method prepareCall
is done; others
may wait until the CallableStatement object
is executed. This has no
direct effect on users; however, it does affect which method
throws certain SQLExceptions.
Result sets created using the returned CallableStatement will have
forward-only type and read-only concurrency, by default.
prepareCall in interface Connectionsql - a SQL statement that may contain one or more '?'
parameter placeholders. Typically this statement is a JDBC
function call escape string.
SQLException - if a database access error occurs
public String nativeSQL(String sql)
throws SQLException
nativeSQL in interface Connectionsql - a SQL statement that may contain one or more '?'
parameter placeholders
SQLException - if a database access error occurs
public void setAutoCommit(boolean autoCommit)
throws SQLException
commit or the method rollback.
By default, new connections are in auto-commit
mode.
The commit occurs when the statement completes or the next
execute occurs, whichever comes first. In the case of
statements returning a ResultSet, the statement completes when
the last row of the ResultSet has been retrieved or the
ResultSet has been closed. In advanced cases, a single
statement may return multiple results as well as output
parameter values. In these cases the commit occurs when all results and
output parameter values have been retrieved.
setAutoCommit in interface ConnectionautoCommit - true enables auto-commit; false disables
auto-commit.
SQLException - if a database access error occurs
public void setManagedEnvironment(boolean managedConnection)
throws SQLException
SQLException
public boolean getAutoCommit()
throws SQLException
getAutoCommit in interface ConnectionSQLException - if a database access error occurssetAutoCommit(boolean)
public void commit()
throws SQLException
commit in interface ConnectionSQLException - if a database access error occurssetAutoCommit(boolean)
public void rollback()
throws SQLException
rollback in interface ConnectionSQLException - if a database access error occurssetAutoCommit(boolean)
public void close()
throws SQLException
Note: A Connection is automatically closed when it is garbage collected. Certain fatal errors also result in a closed Connection.
close in interface ConnectionSQLException - if a database access error occurspublic boolean isClosed()
isClosed in interface Connection
public DatabaseMetaData getMetaData()
throws SQLException
getMetaData in interface ConnectionSQLException - if a database access error occurs
public void setReadOnly(boolean readOnly)
throws SQLException
Note: This method cannot be called while in the middle of a transaction.
setReadOnly in interface ConnectionreadOnly - true enables read-only mode; false disables
read-only mode.
SQLException - if a database access error occurs
public boolean isReadOnly()
throws SQLException
isReadOnly in interface ConnectionSQLException - if a database access error occurs
public void setCatalog(String catalog)
throws SQLException
setCatalog in interface ConnectionSQLException - if a database access error occurs
public String getCatalog()
throws SQLException
getCatalog in interface ConnectionSQLException - if a database access error occurs
public void setTransactionIsolation(int level)
throws SQLException
Connection
are the possible transaction isolation levels.
Calling this method will commit any current transaction.
setTransactionIsolation in interface Connectionlevel - one of the TRANSACTION_* isolation values with the
exception of TRANSACTION_NONE; some databases may not support
other values
SQLException - if a database access error occursDatabaseMetaData.supportsTransactionIsolationLevel(int)
public int getTransactionIsolation()
throws SQLException
getTransactionIsolation in interface ConnectionSQLException - if a database access error occurs
public SQLWarning getWarnings()
throws SQLException
Note: Subsequent warnings will be chained to this SQLWarning.
getWarnings in interface ConnectionSQLException - if a database access error occurs
public void clearWarnings()
throws SQLException
Connection object.
After a call to this method, the method getWarnings
returns null until a new warning is
reported for this Connection.
clearWarnings in interface ConnectionSQLException - if a database access error occurs
public Statement createStatement(int resultSetType,
int resultSetConcurrency)
throws SQLException
Statement object that will generate
ResultSet objects with the given type and concurrency.
This method is the same as the createStatement method
above, but it allows the default result set
type and result set concurrency type to be overridden.
createStatement in interface ConnectionresultSetType - a result set type; see ResultSet.TYPE_XXXresultSetConcurrency - a concurrency type; see ResultSet.CONCUR_XXX
SQLException - if a database access error occurs
public Statement createStatement(int resultSetType,
int resultSetConcurrency,
int resultSetHoldability)
throws SQLException
Statement object that will generate
ResultSet objects with the given type, concurrency,
and holdability.
This method is the same as the createStatement method
above, but it allows the default result set
type, concurrency, and holdability to be overridden.
createStatement in interface ConnectionresultSetType - one of the following ResultSet
constants:
ResultSet.TYPE_FORWARD_ONLY,
ResultSet.TYPE_SCROLL_INSENSITIVE, or
ResultSet.TYPE_SCROLL_SENSITIVEresultSetConcurrency - one of the following ResultSet
constants:
ResultSet.CONCUR_READ_ONLY or
ResultSet.CONCUR_UPDATABLEresultSetHoldability - one of the following ResultSet
constants:
ResultSet.HOLD_CURSORS_OVER_COMMIT or
ResultSet.CLOSE_CURSORS_AT_COMMIT
Statement object that will generate
ResultSet objects with the given type,
concurrency, and holdability
SQLException - if a database access error occurs
or the given parameters are not ResultSet
constants indicating type, concurrency, and holdabilityResultSet
public PreparedStatement prepareStatement(String sql,
int resultSetType,
int resultSetConcurrency)
throws SQLException
PreparedStatement object that will generate
ResultSet objects with the given type and concurrency.
This method is the same as the prepareStatement method
above, but it allows the default result set
type and result set concurrency type to be overridden.
prepareStatement in interface ConnectionresultSetType - a result set type; see ResultSet.TYPE_XXXresultSetConcurrency - a concurrency type; see ResultSet.CONCUR_XXX
SQLException - if a database access error occurs
public PreparedStatement prepareStatement(String sql,
int resultSetType,
int resultSetConcurrency,
int resultSetHoldability)
throws SQLException
prepareStatement in interface ConnectionSQLException
public PreparedStatement prepareStatement(String sql,
int resultSetType,
int resultSetConcurrency,
int resultSetHoldability,
boolean metaData)
throws SQLException
SQLException
public CallableStatement prepareCall(String sql,
int resultSetType,
int resultSetConcurrency)
throws SQLException
CallableStatement object that will generate
ResultSet objects with the given type and concurrency.
This method is the same as the prepareCall method
above, but it allows the default result set
type and result set concurrency type to be overridden.
prepareCall in interface ConnectionresultSetType - a result set type; see ResultSet.TYPE_XXXresultSetConcurrency - a concurrency type; see ResultSet.CONCUR_XXX
SQLException - if a database access error occurs
public CallableStatement prepareCall(String sql,
int resultSetType,
int resultSetConcurrency,
int resultSetHoldability)
throws SQLException
prepareCall in interface ConnectionSQLException
public Map getTypeMap()
throws SQLException
getTypeMap in interface Connectionjava.util.Map object associated
with this Connection object
SQLException
public void setTypeMap(Map map)
throws SQLException
setTypeMap in interface Connectionmap - the java.util.Map object to install
as the replacement for this Connection
object's default type map
SQLException
public FirebirdSavepoint setFirebirdSavepoint()
throws SQLException
Savepoint object that represents it.
setFirebirdSavepoint in interface FirebirdConnectionSavepoint object
SQLException - if a database access error occurs
or this Connection object is currently in
auto-commit modeSavepoint
public FirebirdSavepoint setFirebirdSavepoint(String name)
throws SQLException
Savepoint object that represents it.
setFirebirdSavepoint in interface FirebirdConnectionname - a String containing the name of the savepoint
Savepoint object
SQLException - if a database access error occurs
or this Connection object is currently in
auto-commit modeSavepoint
public void rollback(FirebirdSavepoint savepoint)
throws SQLException
Savepoint object
was set.
This method should be used only when auto-commit has been disabled.
rollback in interface FirebirdConnectionsavepoint - the Savepoint object to roll back to
SQLException - if a database access error occurs,
the Savepoint object is no longer valid,
or this Connection object is currently in
auto-commit modeSavepoint,
rollback()
public void releaseSavepoint(FirebirdSavepoint savepoint)
throws SQLException
Savepoint object from the current
transaction. Any reference to the savepoint after it have been removed
will cause an SQLException to be thrown.
releaseSavepoint in interface FirebirdConnectionsavepoint - the Savepoint object to be removed
SQLException - if a database access error occurs or
the given Savepoint object is not a valid
savepoint in the current transactionprotected void invalidateSavepoints()
public FirebirdLocalTransaction getLocalTransaction()
public Blob createBlob()
throws SQLException
createBlob in interface ConnectioncreateBlob in interface FirebirdConnectionFirebirdBlob.
SQLException - if something went wrong.
public boolean inTransaction()
throws SQLException
SQLException
public String getIscEncoding()
throws SQLException
getIscEncoding in interface FirebirdConnectionSQLExceptionprotected void addWarning(SQLWarning warning)
public GDSHelper getGDSHelper()
throws GDSException
GDSException
protected void finalize()
throws Throwable
finalize in class ObjectThrowable
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||