vortex.sql
Class vortexConnection

java.lang.Object
  extended by vortex.sql.vortexConnection
All Implemented Interfaces:
java.sql.Connection

public class vortexConnection
extends java.lang.Object
implements java.sql.Connection

A connection (session) with a specific database.


Constructor Summary
vortexConnection(java.lang.String conn, int port, java.lang.String host, java.lang.String service, java.lang.String environs, int fbs, int mcl, int dbc, int mlc, java.lang.String login, java.lang.String socksHost, java.lang.String socksPort, java.util.Properties info)
          Constructs a new JDBC connection object for the VORTEX Channel
 
Method Summary
 void clearWarnings()
          Clear the warning chain.
 void close()
          Close the database connection.
 void commit()
          Commit a transaction.
 java.sql.Statement createStatement()
          Create a SQL statement object.
 java.sql.Statement createStatement(int resultSetType, int resultSetConcurrency)
          JDBC 2.0 Creates a Statement object that will generate ResultSet objects with the given type and concurrency.
 java.sql.Statement createStatement(int resultSetType, int resultSetConcurrency, int resultSetHoldability)
          Creates a Statement object that will generate ResultSet objects with the given type, concurrency, and holdability.
 void disableAutoClose()
          Disable closing of statements and result sets.
 boolean getAutoClose()
          Get the current auto-close state.
 boolean getAutoCommit()
          Getting auto-commit mode.
 java.lang.String getCatalog()
          JDBC draft specification method to return the catalog.
 int getHoldability()
          Retrieves the current holdability of ResultSet objects created using this Connection object.
 java.sql.DatabaseMetaData getMetaData()
          Return information about the database.
 int getTransactionIsolation()
          JDBC draft specification method for retrieving the transaction isolation level for the connection.
 java.util.Map<java.lang.String,java.lang.Class<?>> getTypeMap()
          Get type map.
 java.lang.String getURL()
          Gives the URL used to connect to the database.
 java.lang.String getUser()
          Retrieve the user name of the connection.
 java.sql.SQLWarning getWarnings()
          Retrieving a chain of warnings related to the connection.
 boolean isClosed()
          Checking the connection status.
 boolean isReadOnly()
          Checking the read-only status of the connection.
 java.lang.String nativeSQL(java.lang.String sql)
          Converts the given SQL statement into the system's native SQL grammar.
 java.sql.CallableStatement prepareCall(java.lang.String sql)
          Create a stored procedure call.
 java.sql.CallableStatement prepareCall(java.lang.String sql, int resultSetType, int resultSetConcurrency)
          Create a stored procedure call.
 java.sql.CallableStatement prepareCall(java.lang.String sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability)
          Creates a CallableStatement object that will generate ResultSet objects with the given type and concurrency.
 java.sql.PreparedStatement prepareStatement(java.lang.String sql)
          Create an SQL pre-compiled statement.
 java.sql.PreparedStatement prepareStatement(java.lang.String sql, int autoGeneratedKeys)
          Creates a default PreparedStatement object that has the capability to retrieve auto-generated keys.
 java.sql.PreparedStatement prepareStatement(java.lang.String sql, int[] columnIndexes)
          Creates a default PreparedStatement object capable of returning the auto-generated keys designated by the given array.
 java.sql.PreparedStatement prepareStatement(java.lang.String sql, int resultSetType, int resultSetConcurrency)
          JDBC 2.0 Creates a PreparedStatement object that will generate ResultSet objects with the given type and concurrency.
 java.sql.PreparedStatement prepareStatement(java.lang.String sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability)
          Creates a PreparedStatement object that will generate ResultSet objects with the given type, concurrency, and holdability.
 java.sql.PreparedStatement prepareStatement(java.lang.String sql, java.lang.String[] columnNames)
          Creates a default PreparedStatement object capable of returning the auto-generated keys designated by the given array.
 void releaseSavepoint(java.sql.Savepoint savepoint)
          Removes the given Savepoint object from the current transaction.
 void rollback()
          Rollback a transaction.
 void rollback(java.sql.Savepoint savepoint)
          Undoes all changes made after the given Savepoint object was set.
 void setAutoClose(boolean autoClose)
          When a Connection is in auto-close mode all its PreparedStatements, CallableStatements, and ResultSets will be closed when a transaction is committed or rolled back.
 void setAutoCommit(boolean b)
          Setting the auto-commit mode.
 void setCatalog(java.lang.String str)
          JDBC draft specification method to select a sub-space of the target database.
 void setHoldability(int holdability)
          Changes the holdability of ResultSet objects created using this Connection object to the given holdability.
 void setReadOnly(boolean b)
          Setup the connection in read-only mode.
 java.sql.Savepoint setSavepoint()
          Creates an unnamed savepoint in the current transaction and returns the new Savepoint object that represents it.
 java.sql.Savepoint setSavepoint(java.lang.String name)
          Creates a savepoint with the given name in the current transaction and returns the new Savepoint object that represents it.
 void setTransactionIsolation(int level)
          This method has no meaning to VORTEX since VORTEX support isolation level on a newly opened connection, using TRANSACTION_REPEATABLE_READ only
 void setTypeMap(java.util.Map<java.lang.String,java.lang.Class<?>> map)
          Set type map.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

vortexConnection

public vortexConnection(java.lang.String conn,
                        int port,
                        java.lang.String host,
                        java.lang.String service,
                        java.lang.String environs,
                        int fbs,
                        int mcl,
                        int dbc,
                        int mlc,
                        java.lang.String login,
                        java.lang.String socksHost,
                        java.lang.String socksPort,
                        java.util.Properties info)
                 throws java.sql.SQLException

Constructs a new JDBC connection object for the VORTEX Channel

Parameters:
conn - the database login like 'scott/tiger' for Oracle
port - the TCP/IP services port number
host - the IP address of the host on which the VORTEX server resides
service - the host program on server eg. 'VTX4'
environs - the environment variables
fbs - the fetch buffer size for query like 8192
mcl - the max DB columns like 256
dbc - the number of DB cursors
mlc - the max number of logical cursors
login - the operating system logon like '(user/password)'
socksHost - the IP address or name of the SOCKS server
socksPort - the port of the SOCKS server
info - extra configuration parameters
Throws:
java.sql.SQLException - raised in the event of connection failure
java.sql.SQLException - thrown in the event the connection fails
Method Detail

createStatement

public java.sql.Statement createStatement()
                                   throws java.sql.SQLException
Create a SQL statement object.

Specified by:
createStatement in interface java.sql.Connection
Returns:
a new statement object
Throws:
java.sql.SQLException - thrown in the event the creation fails
See Also:
Connection.createStatement()

createStatement

public java.sql.Statement createStatement(int resultSetType,
                                          int resultSetConcurrency)
                                   throws java.sql.SQLException
JDBC 2.0 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.

Specified by:
createStatement in interface java.sql.Connection
Returns:
a new statement object
Throws:
java.sql.SQLException - thrown in the event the creation fails
See Also:
Connection.createStatement()

prepareStatement

public java.sql.PreparedStatement prepareStatement(java.lang.String sql)
                                            throws java.sql.SQLException
Create an SQL pre-compiled statement.

Specified by:
prepareStatement in interface java.sql.Connection
Parameters:
sql - SQL statement
Returns:
the prepared SQL statement
Throws:
java.sql.SQLException - gets if the prepare fails
See Also:
Connection.prepareStatement(java.lang.String)

prepareStatement

public java.sql.PreparedStatement prepareStatement(java.lang.String sql,
                                                   int resultSetType,
                                                   int resultSetConcurrency)
                                            throws java.sql.SQLException
JDBC 2.0 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.

Specified by:
prepareStatement in interface java.sql.Connection
Parameters:
sql - SQL statement
resultSetType - - a result set type; see ResultSet.TYPE_XXX
resultSetConcurrency - - a concurrency type; see ResultSet.CONCUR_XXX
Returns:
a new statement object
Throws:
java.sql.SQLException - thrown in the event the creation fails

prepareCall

public java.sql.CallableStatement prepareCall(java.lang.String sql)
                                       throws java.sql.SQLException
Create a stored procedure call.

Note that stored procedures aren't supported by VORTEXjdbc now, so this method throws an exception.

Specified by:
prepareCall in interface java.sql.Connection
Parameters:
sql - SQL statement
Throws:
java.sql.SQLException - gets thrown any time this is called
See Also:
Connection.prepareCall(java.lang.String)

prepareCall

public java.sql.CallableStatement prepareCall(java.lang.String sql,
                                              int resultSetType,
                                              int resultSetConcurrency)
                                       throws java.sql.SQLException
Create a stored procedure call.

Note that stored procedures aren't supported by VORTEXjdbc now, so this method throws an exception.

Specified by:
prepareCall in interface java.sql.Connection
Parameters:
sql - SQL statement
resultSetType -
resultSetConcurrency -
Throws:
java.sql.SQLException - gets thrown any time this is called
See Also:
Connection.prepareCall(java.lang.String)

setTypeMap

public void setTypeMap(java.util.Map<java.lang.String,java.lang.Class<?>> map)
                throws java.sql.SQLException
Set type map.

Specified by:
setTypeMap in interface java.sql.Connection
Throws:
java.sql.SQLException - Not apply

getTypeMap

public java.util.Map<java.lang.String,java.lang.Class<?>> getTypeMap()
                                                              throws java.sql.SQLException
Get type map.

Specified by:
getTypeMap in interface java.sql.Connection
Returns:
the map in use, NULL if not set
Throws:
java.sql.SQLException - Not apply

nativeSQL

public java.lang.String nativeSQL(java.lang.String sql)
                           throws java.sql.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.

Specified by:
nativeSQL in interface java.sql.Connection
Returns:
the SQL string
Throws:
java.sql.SQLException - if a database access error occurs

setAutoCommit

public void setAutoCommit(boolean b)
                   throws java.sql.SQLException
Setting the auto-commit mode.

Specified by:
setAutoCommit in interface java.sql.Connection
Parameters:
b - this set auto commit
Throws:
java.sql.SQLException - Not apply
See Also:
Connection.setAutoCommit(boolean)

getAutoCommit

public boolean getAutoCommit()
                      throws java.sql.SQLException
Getting auto-commit mode.

Specified by:
getAutoCommit in interface java.sql.Connection
Returns:
the true/false
Throws:
java.sql.SQLException - Not apply
See Also:
Connection.getAutoCommit()

commit

public void commit()
            throws java.sql.SQLException
Commit a transaction.

Specified by:
commit in interface java.sql.Connection
Throws:
java.sql.SQLException - thrown in the event the commit fails
See Also:
Connection.commit()

rollback

public void rollback()
              throws java.sql.SQLException
Rollback a transaction.

Specified by:
rollback in interface java.sql.Connection
Throws:
java.sql.SQLException - thrown in the event the rollback fails
See Also:
Connection.rollback()

close

public void close()
           throws java.sql.SQLException
Close the database connection.

Specified by:
close in interface java.sql.Connection
Throws:
java.sql.SQLException - thrown in the event of an cursor close fails
See Also:
Connection.close()

isClosed

public boolean isClosed()
                 throws java.sql.SQLException
Checking the connection status.

Specified by:
isClosed in interface java.sql.Connection
Returns:
true if the connection is closed, false otherwise
Throws:
java.sql.SQLException - Not apply
See Also:
Connection.isClosed()

getMetaData

public java.sql.DatabaseMetaData getMetaData()
                                      throws java.sql.SQLException
Return information about the database.

Specified by:
getMetaData in interface java.sql.Connection
Returns:
a DatabaseMetaData object with database info
Throws:
java.sql.SQLException - thrown if an error occurs reading meta-data
See Also:
Connection.getMetaData()

setReadOnly

public void setReadOnly(boolean b)
                 throws java.sql.SQLException
Setup the connection in read-only mode.

Specified by:
setReadOnly in interface java.sql.Connection
Parameters:
b - boolean read-only
Throws:
java.sql.SQLException - Not apply
See Also:
Connection.setReadOnly(boolean)

isReadOnly

public boolean isReadOnly()
                   throws java.sql.SQLException
Checking the read-only status of the connection.

Specified by:
isReadOnly in interface java.sql.Connection
Returns:
status of read-only
Throws:
java.sql.SQLException - Not apply
See Also:
Connection.isReadOnly()

setCatalog

public void setCatalog(java.lang.String str)
                throws java.sql.SQLException
JDBC draft specification method to select a sub-space of the target database. It basically has no menaing to VORTEXjdbc.

Specified by:
setCatalog in interface java.sql.Connection
Parameters:
str - the catalog
Throws:
java.sql.SQLException - thrown method does not support
See Also:
Connection.setCatalog(java.lang.String)

getCatalog

public java.lang.String getCatalog()
                            throws java.sql.SQLException
JDBC draft specification method to return the catalog.

Specified by:
getCatalog in interface java.sql.Connection
Returns:
the catalog name
Throws:
java.sql.SQLException - thrown method does not support
See Also:
Connection.getCatalog()

setTransactionIsolation

public void setTransactionIsolation(int level)
                             throws java.sql.SQLException
This method has no meaning to VORTEX since VORTEX support isolation level on a newly opened connection, using TRANSACTION_REPEATABLE_READ only

Note: setTransactionIsolation cannot be called while in the middle of a transaction.

Specified by:
setTransactionIsolation in interface java.sql.Connection
Parameters:
level - one of the TRANSACTION_* isolation values with the exception of TRANSACTION_NONE; some databases may not support other values
Throws:
java.sql.SQLException - threw method does not support by VORTEXjdbc.
See Also:
DatabaseMetaData.supportsTransactionIsolationLevel(int)

getTransactionIsolation

public int getTransactionIsolation()
                            throws java.sql.SQLException
JDBC draft specification method for retrieving the transaction isolation level for the connection.

VORTEXjdbc return TRANSACTION_REPEATABLE_READ only

Specified by:
getTransactionIsolation in interface java.sql.Connection
Returns:
TRANSACTION_REPEATABLE_READ always
Throws:
java.sql.SQLException - Not apply
See Also:
Connection.getTransactionIsolation()

disableAutoClose

public void disableAutoClose()
                      throws java.sql.SQLException
Disable closing of statements and result sets.

Throws:
java.sql.SQLException - Not apply

setAutoClose

public void setAutoClose(boolean autoClose)
                  throws java.sql.SQLException
When a Connection is in auto-close mode all its PreparedStatements, CallableStatements, and ResultSets will be closed when a transaction is committed or rolled back. By default, a new Connection is in auto-close mode.

When auto-close is disabled JDBC attempts to keep all statements and ResultSets open across commits and rollbacks. However the actual behaviour will vary depending on what the underlying database supports. Some databases allow these objects to remain open across commits whereas other databases insist on closing them.

Parameters:
autoClose - true enables auto-close, false disables auto-close.
Throws:
java.sql.SQLException - Not apply
See Also:
DatabaseMetaData.supportsOpenCursorsAcrossCommit(), DatabaseMetaData.supportsOpenCursorsAcrossRollback(), DatabaseMetaData.supportsOpenStatementsAcrossCommit(), DatabaseMetaData.supportsOpenStatementsAcrossRollback()

getAutoClose

public boolean getAutoClose()
                     throws java.sql.SQLException
Get the current auto-close state.

Returns:
Current state of auto-close mode.
Throws:
java.sql.SQLException - Not apply
See Also:
setAutoClose(boolean)

getWarnings

public java.sql.SQLWarning getWarnings()
                                throws java.sql.SQLException
Retrieving a chain of warnings related to the connection.

Specified by:
getWarnings in interface java.sql.Connection
Returns:
the chain of warnings for this connection
Throws:
java.sql.SQLException - Not apply
See Also:
Connection.getWarnings()

clearWarnings

public void clearWarnings()
                   throws java.sql.SQLException
Clear the warning chain.

Specified by:
clearWarnings in interface java.sql.Connection
Throws:
java.sql.SQLException - Not apply
See Also:
Connection.clearWarnings()

getURL

public final java.lang.String getURL()
Gives the URL used to connect to the database.

Returns:
the URL

getUser

public final java.lang.String getUser()
Retrieve the user name of the connection.

Returns:
the user name used to connect to the database

setHoldability

public void setHoldability(int holdability)
                    throws java.sql.SQLException
Changes the holdability of ResultSet objects created using this Connection object to the given holdability.

Specified by:
setHoldability in interface java.sql.Connection
Parameters:
holdability - - a ResultSet holdability constant; one of ResultSet.HOLD_CURSORS_OVER_COMMIT or ResultSet.CLOSE_CURSORS_AT_COMMIT
Throws:
java.sql.SQLException - - if a database access occurs, the given parameter is not a ResultSet constant indicating holdability, or the given holdability is not supported

getHoldability

public int getHoldability()
                   throws java.sql.SQLException
Retrieves the current holdability of ResultSet objects created using this Connection object.

Specified by:
getHoldability in interface java.sql.Connection
Returns:
the holdability, one of ResultSet.HOLD_CURSORS_OVER_COMMIT or ResultSet.CLOSE_CURSORS_AT_COMMIT
Throws:
java.sql.SQLException - - if a database access occurs

setSavepoint

public java.sql.Savepoint setSavepoint()
                                throws java.sql.SQLException
Creates an unnamed savepoint in the current transaction and returns the new Savepoint object that represents it.

Specified by:
setSavepoint in interface java.sql.Connection
Returns:
the new Savepoint object
Throws:
java.sql.SQLException - - if a database access error occurs or this Connection object is currently in auto-commit mode

setSavepoint

public java.sql.Savepoint setSavepoint(java.lang.String name)
                                throws java.sql.SQLException
Creates a savepoint with the given name in the current transaction and returns the new Savepoint object that represents it.

Specified by:
setSavepoint in interface java.sql.Connection
Parameters:
name - - a String containing the name of the savepoint
Returns:
the new Savepoint object
Throws:
java.sql.SQLException - - if a database access error occurs or this Connection object is currently in auto-commit mode

rollback

public void rollback(java.sql.Savepoint savepoint)
              throws java.sql.SQLException
Undoes all changes made after the given Savepoint object was set. This method should be used only when auto-commit has been disabled.

Specified by:
rollback in interface java.sql.Connection
Parameters:
savepoint - - the Savepoint object to roll back to
Throws:
java.sql.SQLException - - if a database access error occurs, the Savepoint object is no longer valid, or this Connection object is currently in auto-commit mode

releaseSavepoint

public void releaseSavepoint(java.sql.Savepoint savepoint)
                      throws java.sql.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.

Specified by:
releaseSavepoint in interface java.sql.Connection
Parameters:
savepoint - - the Savepoint object to be removed
Throws:
java.sql.SQLException - - if a database access error occurs or the given Savepoint object is not a valid savepoint in the current transaction

createStatement

public java.sql.Statement createStatement(int resultSetType,
                                          int resultSetConcurrency,
                                          int resultSetHoldability)
                                   throws java.sql.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.

Specified by:
createStatement in interface java.sql.Connection
Parameters:
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
Returns:
a new Statement object that will generate ResultSet objects with the given type, concurrency, and holdability
Throws:
java.sql.SQLException - - if a database access error occurs or the given parameters are not ResultSet constants indicating type, concurrency, and holdability

prepareStatement

public java.sql.PreparedStatement prepareStatement(java.lang.String sql,
                                                   int resultSetType,
                                                   int resultSetConcurrency,
                                                   int resultSetHoldability)
                                            throws java.sql.SQLException
Creates a PreparedStatement object that will generate ResultSet objects with the given type, concurrency, and holdability. This method is the same as the prepareStatement method above, but it allows the default result set type, concurrency, and holdability to be overridden.

Specified by:
prepareStatement in interface java.sql.Connection
Parameters:
sql - - a String object that is the SQL statement to be sent to the database; may contain one or more ? IN parameters
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
Returns:
a new PreparedStatement object, containing the pre-compiled SQL statement, that will generate ResultSet objects with the given type, concurrency, and holdability
Throws:
java.sql.SQLException - - if a database access error occurs or the given parameters are not ResultSet constants indicating type, concurrency, and holdability

prepareCall

public java.sql.CallableStatement prepareCall(java.lang.String sql,
                                              int resultSetType,
                                              int resultSetConcurrency,
                                              int resultSetHoldability)
                                       throws java.sql.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, result set concurrency type and holdability to be overridden.

Specified by:
prepareCall in interface java.sql.Connection
Parameters:
sql - - a String object that is the SQL statement to be sent to the database; may contain on or more ? parameters
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
Returns:
a new CallableStatement object, containing the pre-compiled SQL statement, that will generate ResultSet objects with the given type, concurrency, and holdability
Throws:
java.sql.SQLException - - if a database access error occurs or the given parameters are not ResultSet constants indicating type, concurrency, and holdability

prepareStatement

public java.sql.PreparedStatement prepareStatement(java.lang.String sql,
                                                   int autoGeneratedKeys)
                                            throws java.sql.SQLException
Creates a default PreparedStatement object that has the capability to retrieve auto-generated keys. The given constant tells the driver whether it should make auto-generated keys available for retrieval. This parameter is ignored if the SQL statement is not an INSERT statement. 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 object is executed. This has no direct effect on users; however, it does affect which methods throw certain SQLExceptions. Result sets created using the returned PreparedStatement object will by default be type TYPE_FORWARD_ONLY and have a concurrency level of CONCUR_READ_ONLY.

Specified by:
prepareStatement in interface java.sql.Connection
Parameters:
sql - - an SQL statement that may contain one or more '?' IN parameter placeholders
autoGeneratedKeys - - a flag indicating whether auto-generated keys should be returned; one of Statement.RETURN_GENERATED_KEYS or Statement.NO_GENERATED_KEYS
Returns:
a new PreparedStatement object, containing the pre-compiled SQL statement, that will have the capability of returning auto-generated keys
Throws:
java.sql.SQLException - - if a database access error occurs or the given parameter is not a Statement constant indicating whether auto-generated keys should be returned

prepareStatement

public java.sql.PreparedStatement prepareStatement(java.lang.String sql,
                                                   int[] columnIndexes)
                                            throws java.sql.SQLException
Creates a default PreparedStatement object capable of returning the auto-generated keys designated by the given array. This array contains the indexes of the columns in the target table that contain the auto-generated keys that should be made available. This array is ignored if the SQL statement is not an INSERT statement. An 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 object is executed. This has no direct effect on users; however, it does affect which methods throw certain SQLExceptions. Result sets created using the returned PreparedStatement object will by default be type TYPE_FORWARD_ONLY and have a concurrency level of CONCUR_READ_ONLY.

Specified by:
prepareStatement in interface java.sql.Connection
Parameters:
sql - - an SQL statement that may contain one or more '?' IN parameter placeholders
columnIndexes - - an array of column indexes indicating the columns that should be returned from the inserted row or rows
Returns:
a new PreparedStatement object, containing the pre-compiled statement, that is capable of returning the auto-generated keys designated by the given array of column indexes
Throws:
java.sql.SQLException - - if a database access error occurs

prepareStatement

public java.sql.PreparedStatement prepareStatement(java.lang.String sql,
                                                   java.lang.String[] columnNames)
                                            throws java.sql.SQLException
Creates a default PreparedStatement object capable of returning the auto-generated keys designated by the given array. This array contains the names of the columns in the target table that contain the auto-generated keys that should be returned. This array is ignored if the SQL statement is not an INSERT statement. An 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 object is executed. This has no direct effect on users; however, it does affect which methods throw certain SQLExceptions. Result sets created using the returned PreparedStatement object will by default be type TYPE_FORWARD_ONLY and have a concurrency level of CONCUR_READ_ONLY.

Specified by:
prepareStatement in interface java.sql.Connection
Parameters:
sql - - an SQL statement that may contain one or more '?' IN parameter placeholders
columnNames - - an array of column names indicating the columns that should be returned from the inserted row or rows
Returns:
a new PreparedStatement object, containing the pre-compiled statement, that is capable of returning the auto-generated keys designated by the given array of column names exception SQLException - if a database access error occurs
Throws:
java.sql.SQLException