addWarning
protected void addWarning(SQLWarning warning)
clearWarnings
public void clearWarnings()
throws SQLException
Clears all warnings reported for this Connection
object.
After a call to this method, the method getWarnings
returns null until a new warning is
reported for this Connection.
close
public void close()
throws SQLException
Releases a Connection's database and JDBC resources
immediately instead of waiting for
them to be automatically released.
Note: A Connection is automatically closed when it is
garbage collected. Certain fatal errors also result in a closed
Connection.
commit
public void commit()
throws SQLException
Makes all changes made since the previous
commit/rollback permanent and releases any database locks
currently held by the Connection. This method should be
used only when auto-commit mode has been disabled.
createBlob
public Blob createBlob()
throws SQLException
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.
- createBlob in interface FirebirdConnection
createStatement
public Statement createStatement()
throws SQLException
Creates a
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
public Statement createStatement(int resultSetType,
int resultSetConcurrency)
throws SQLException
Creates a 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.
resultSetType
- a result set type; see ResultSet.TYPE_XXXresultSetConcurrency
- a concurrency type; see ResultSet.CONCUR_XXX
createStatement
public Statement createStatement(int resultSetType,
int resultSetConcurrency,
int resultSetHoldability)
throws SQLException
Creates a 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.
resultSetType
- one of the following ResultSet
constants:
ResultSet.TYPE_FORWARD_ONLY
,
ResultSet.TYPE_SCROLL_INSENSITIVE
, or
ResultSet.TYPE_SCROLL_SENSITIVE
resultSetConcurrency
- one of the following ResultSet
constants:
ResultSet.CONCUR_READ_ONLY
or
ResultSet.CONCUR_UPDATABLE
resultSetHoldability
- one of the following ResultSet
constants:
ResultSet.HOLD_CURSORS_OVER_COMMIT
or
ResultSet.CLOSE_CURSORS_AT_COMMIT
- a new
Statement
object that will generate
ResultSet
objects with the given type,
concurrency, and holdability
finalize
protected void finalize()
throws Throwable
getAutoCommit
public boolean getAutoCommit()
throws SQLException
Gets the current auto-commit state.
- the current state of auto-commit mode
getCatalog
public String getCatalog()
throws SQLException
Returns the Connection's current catalog name.
- the current catalog name or null
getDatabaseParameterBuffer
public DatabaseParameterBuffer getDatabaseParameterBuffer()
Get database parameter buffer for this connection.
getGDSHelper
public org.firebirdsql.gds.impl.GDSHelper getGDSHelper()
throws GDSException
getHoldability
public int getHoldability()
throws SQLException
Retrieves the current holdability of
ResultSet
objects
created using this
Connection
object.
Method copied from the JDBC 3.0 specification.
- getHoldability in interface FirebirdConnection
- the holdability, one of
ResultSet.HOLD_CURSORS_OVER_COMMIT
or
ResultSet.CLOSE_CURSORS_AT_COMMIT
getInternalAPIHandler
public GDS getInternalAPIHandler()
throws SQLException
Get Firebird API handler (sockets/native/embeded/etc)
- handler object for internal API calls
getIscDBHandle
public IscDbHandle getIscDBHandle()
throws GDSException
Get connection handle for direct Firebird API access
- internal handle for connection
GDSException
- if handle needed to be created and creation failed
getIscEncoding
public String getIscEncoding()
throws SQLException
Get the encoding that is being used for this connection.
- getIscEncoding in interface FirebirdConnection
- The name of the encoding used
getLocalTransaction
public FirebirdLocalTransaction getLocalTransaction()
Returns a FBLocalTransaction instance that enables a component to
demarcate resource manager local transactions on this connection.
getMetaData
public DatabaseMetaData getMetaData()
throws SQLException
Gets the metadata regarding this connection's database.
A Connection's database is able to provide information
describing its tables, its supported SQL grammar, its stored
procedures, the capabilities of this connection, and so on. This
information is made available through a DatabaseMetaData
object.
- a DatabaseMetaData object for this Connection
getTransactionIsolation
public int getTransactionIsolation()
throws SQLException
Gets this Connection's current transaction isolation level.
- the current TRANSACTION_* mode value
getTypeMap
public Map getTypeMap()
throws SQLException
Gets the type map object associated with this connection.
Unless the application has added an entry to the type map,
the map returned will be empty.
- the
java.util.Map
object associated
with this Connection
object
getWarnings
public SQLWarning getWarnings()
throws SQLException
Returns the first warning reported by calls on this Connection.
Note: Subsequent warnings will be chained to this
SQLWarning.
- the first SQLWarning or null
inTransaction
public boolean inTransaction()
throws SQLException
Check if this connection is currently involved in a transaction
invalidateSavepoints
protected void invalidateSavepoints()
Invalidate all savepoints.
isClosed
public boolean isClosed()
Tests to see if a Connection is closed.
- true if the connection is closed; false if it's still open
isReadOnly
public boolean isReadOnly()
throws SQLException
Tests to see if the connection is in read-only mode.
- true if connection is read-only and false otherwise
nativeSQL
public String nativeSQL(String sql)
throws SQLException
Converts the given SQL statement into the system's native SQL grammar.
A driver may convert the JDBC sql grammar into its system's
native SQL grammar prior to sending it; this method returns the
native form of the statement that the driver would have sent.
sql
- a SQL statement that may contain one or more '?'
parameter placeholders
- the native form of this statement
prepareCall
public CallableStatement prepareCall(String sql)
throws SQLException
Creates a
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.
sql
- a SQL statement that may contain one or more '?'
parameter placeholders. Typically this statement is a JDBC
function call escape string.
- a new CallableStatement object containing the
pre-compiled SQL statement
prepareCall
public CallableStatement prepareCall(String sql,
int resultSetType,
int resultSetConcurrency)
throws SQLException
Creates a 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.
resultSetType
- a result set type; see ResultSet.TYPE_XXXresultSetConcurrency
- a concurrency type; see ResultSet.CONCUR_XXX
- a new CallableStatement object containing the
pre-compiled SQL statement
prepareCall
public CallableStatement prepareCall(String sql,
int resultSetType,
int resultSetConcurrency,
int resultSetHoldability)
throws SQLException
prepareStatement
public PreparedStatement prepareStatement(String sql)
throws SQLException
Creates a
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.
sql
- a SQL statement that may contain one or more '?' IN
parameter placeholders
- a new PreparedStatement object containing the
pre-compiled statement
prepareStatement
public PreparedStatement prepareStatement(String sql,
int resultSetType,
int resultSetConcurrency)
throws SQLException
Creates a 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.
resultSetType
- a result set type; see ResultSet.TYPE_XXXresultSetConcurrency
- a concurrency type; see ResultSet.CONCUR_XXX
- a new PreparedStatement object containing the
pre-compiled SQL statement
prepareStatement
public PreparedStatement prepareStatement(String sql,
int resultSetType,
int resultSetConcurrency,
int resultSetHoldability)
throws SQLException
prepareStatement
public PreparedStatement prepareStatement(String sql,
int resultSetType,
int resultSetConcurrency,
int resultSetHoldability,
boolean metaData)
throws SQLException
releaseSavepoint
public void releaseSavepoint(FirebirdSavepoint savepoint)
throws SQLException
Removes the given 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 FirebirdConnection
savepoint
- the Savepoint
object to be removed
rollback
public void rollback()
throws SQLException
Drops all changes made since the previous
commit/rollback and releases any database locks currently held
by this Connection. This method should be used only when auto-
commit has been disabled.
rollback
public void rollback(FirebirdSavepoint savepoint)
throws SQLException
Undoes all changes made after the given
Savepoint
object
was set.
This method should be used only when auto-commit has been disabled.
- rollback in interface FirebirdConnection
savepoint
- the Savepoint
object to roll back to
setAutoCommit
public void setAutoCommit(boolean autoCommit)
throws SQLException
Sets this connection's auto-commit mode.
If a connection is in auto-commit mode, then all its SQL
statements will be executed and committed as individual
transactions. Otherwise, its SQL statements are grouped into
transactions that are terminated by a call to either
the method 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.
autoCommit
- true enables auto-commit; false disables
auto-commit.
setCatalog
public void setCatalog(String catalog)
throws SQLException
Sets a catalog name in order to select
a subspace of this Connection's database in which to work.
If the driver does not support catalogs, it will
silently ignore this request.
setFirebirdSavepoint
public FirebirdSavepoint setFirebirdSavepoint(String name)
throws SQLException
Creates a savepoint with the given name in the current transaction
and returns the new Savepoint
object that represents it.
- setFirebirdSavepoint in interface FirebirdConnection
name
- a String
containing the name of the savepoint
setHoldability
public void setHoldability(int holdability)
throws SQLException
Changes the holdability of
ResultSet
objects
created using this
Connection
object to the given
holdability.
Method copied from the JDBC 3.0 specification.
- setHoldability in interface FirebirdConnection
holdability
- a ResultSet
holdability constant; one of
ResultSet.HOLD_CURSORS_OVER_COMMIT
or
ResultSet.CLOSE_CURSORS_AT_COMMIT
setManagedConnection
public void setManagedConnection(FBManagedConnection mc)
mc
- The FBManagedConnection around which this connection is based
setManagedEnvironment
public void setManagedEnvironment(boolean managedConnection)
throws SQLException
setReadOnly
public void setReadOnly(boolean readOnly)
throws SQLException
Puts this connection in read-only mode as a hint to enable
database optimizations.
Note: This method cannot be called while in the
middle of a transaction.
readOnly
- true enables read-only mode; false disables
read-only mode.
setTransactionIsolation
public void setTransactionIsolation(int level)
throws SQLException
Attempts to change the transaction
isolation level to the one given.
The constants defined in the interface
Connection
are the possible transaction isolation levels.
Calling this method will commit any current transaction.
level
- one of the TRANSACTION_* isolation values with the
exception of TRANSACTION_NONE; some databases may not support
other values
DatabaseMetaData.supportsTransactionIsolationLevel
setTransactionParameters
public void setTransactionParameters(int isolationLevel,
TransactionParameterBuffer tpb)
throws SQLException
Set transaction parameters for the specified transaction isolation level.
This method replaces the default TPB mapping with the specified one,
changes will be effective from the next transaction start.
- setTransactionParameters in interface FirebirdConnection
isolationLevel
- isolation level defined in the Connection
interface.tpb
- instance of TransactionParameterBuffer
with parameters
to set.
setTransactionParameters
public void setTransactionParameters(TransactionParameterBuffer tpb)
throws SQLException
Set transaction parameters for the next transactions. This method does
not change the TPB mapping, but replaces the mapping for the current
transaction isolation until
Connection.setTransactionIsolation(int)
is called.
Method cannot be called when transaction has already started.
- setTransactionParameters in interface FirebirdConnection
setTypeMap
public void setTypeMap(Map map)
throws SQLException
Installs the given type map as the type map for
this connection. The type map will be used for the
custom mapping of SQL structured types and distinct types.
map
- the java.util.Map
object to install
as the replacement for this Connection
object's default type map