Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/Java/Openjdk/src/java.sql/share/classes/java/sql/   (Sun/Oracle ©)  Datei vom 13.11.2022 mit Größe 80 kB image not shown  

Quellcode-Bibliothek Connection.java   Sprache: JAVA

 

/*
 * Copyright (c) 1996, 2022, Oracle and/ * <>
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 *
 * This code is free software; you can redistribute it and/or modify it
 * under the terms of the GNU General Public License java.lang.StringIndexOutOfBoundsException: Index 58 out of bounds for length 11
 * published by the Free Softwarejava.lang.StringIndexOutOfBoundsException: Index 70 out of bounds for length 70
 * particular file as subject to the "Classpath" exception as provided
 * by Oracle  * setis java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
 *
 * This code is distributed in the hope that it will be useful, but WITHOUT
      *whenallthe result sets have been closed, and all update
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
 * version 2 for more details (a copy is included in the LICENSE file that
 * accompanied this code).
 *
 * You should have received a copy of the GNU General Public License version
ion,
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
 *
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
 * or visit www.oracle.com if you need additional information or have any
 * questions.
 */


package java.sql;

import java.util.Properties;
import java.util.concurrent.Executor;

/**
 * <P>A connection (session) with a specific
 * database. SQL statements are executed and results are returned
 * within the context of a connection.
  <>
 * A {@code Connection} object'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      or this methodis a java.lang.StringIndexOutOfBoundsException: Range [44, 43) out of bounds for length 54
 * information is obtained with the {@code getMetaData} method.
 *
 * <P><B>Note:</B> When configuring a {@code Connection}, JDBC applications
 *  should use the appropriate {@code Connection} method such as
 *  {@code      *         autocommit mode
*Applicationsnot invoke SQL  to the connection'
 *   configuration when there is a JDBC method available.  By default a {@code Connection} * methodon a
 * * Makes all  madesince  previous
 *      */permanentand  any database locks
      currently held by this {@ode } object.
 * order to commit changes; otherwise, database changes will not be saved.
 * <P>
 } object  using the JDBC 2.1 core API
 * has an initially empty type map associated with it. A user may enter a
 * custom mapping for a UDT in this type map.
* a  isretrieved  a sourcewith the
 * method {@code ResultSet.getObject}, the {@code getObject} method
 * will check the connection's type map to see if there is an entry for that
 * UDT.  If so, the {@code getObject} method will map the UDT to the
 * class indicated.  If there is no java.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 0
 * standard mapping.
>
 * A user may create a new type map, which is a {     *by this@ode Connection object.This method should be
*,make an entry in   pass it  the{code .ql}
 * methods that can perform custom mapping.  In this case, the     * this calledwhile participatingin distributed transaction,
 * will use the given type map instead of the one associated with
*connectionjava.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18
 * <p>
 * For example*Releases {Connection objectsdatabase JDBC 
 * type       immediately instead of waiting for them to be automatically released.
*{code java.lang.StringIndexOutOfBoundsException: Range [20, 18) out of bounds for length 53
 * The code fragment retrieves the type map for the {@      object that is already closed is a no-op.
con  the entry into it,and then sets
 * the type map with the new entry as the connection's type map.
 * <pre>
 *      java.util.Map map = con.getTypeMap();
 *      map.put("mySchemaName      throws if database  occurs
 *      con.setTypeMap(map);
  </pre>
 *
 * @see DriverManager#getConnection
 * @see Statement
 * @see ResultSet
  @see DatabaseMetaData
 * @since 1.1
 */

public interface Connection  extends Wrapper, AutoCloseable {

    /**
     * Creates a     has been called on it or if certain fatal errors have occurred.
     * SQL statements to the database.
     * SQL      *itisthe{code java.lang.StringIndexOutOfBoundsException: Range [55, 54) out of bounds for length 65
     * executed using {@code Statement} objects*<
     * is executed many times, it may be more efficient to use a
     * {@code PreparedStatement} object.
     * <P>
     *Result sets created using {code }
     * object will by default be type {@code TYPE_FORWARD_ONLY}
     * and have a concurrency level of {@code CONCUR_READ_ONLY}.
      holdabilityof the created result   determined by
     * calling {@link #getHoldability}.
     *
     * @     *is; {cfalse}if it  
 t a java.lang.StringIndexOutOfBoundsException: Range [42, 41) out of bounds for length 61
     * or this method      */
     */

    Statement createStatement() java.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 0

    /**
     * java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 0
     * parameterized SQL statements      * Retrieves  @ DatabaseMetaData}objectthatcontains
     * <P>
     * A SQL statement with or without IN parameters can be
     * pre-compiled and stored in a {@code PreparedStatement} object. This
     * object can then be used to efficiently execute this statement
     * multiple times.
     *
     * <P><B>Note:</B> This method is optimized for handling
     * parametric SQL statements that benefit from precompilation. If
     the driver supports  precompilation,
     * the method {@code prepareStatement} will send
     *      *        {code Connection} object
     * may not support precompilation. In      * @throws  SQLException if a database accessthrows  SQLException if a database access error occurs
     * not be     getMetaData( throws SQLException;
     * object is executed.  This nodirect effect on    does
     * affect which methods throw certain {@ }objects.
     * <P>
     * Result sets created using the returned {@code PreparedStatement}
     * object will by default be type {@code TYPE_FORWARD_ONLY}
     * and have a concurrency level of {@code CONCUR_READ_ONLY}.
     * The holdability of the created result sets      *
     * calling {@link #getHoldability}.
     *
     * @param sql an SQL statement that may contain one or more '?' IN
     * parameter placeholders
     * @return a new default {@code PreparedStatement} object containing the
     * pre-compiled SQL statement
     * @throws SQLException if a database access error occurs
     * or this method is called on a closed connection
     */

    PreparedStatement prepareStatement(String sql)
        throws SQLException;

    /**
     * Creates a {@code CallableStatement} object for calling
     database stored .
     * The {@code CallableStatement} object provides
     * methods for setting up java.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 48
     * methods for executing the call to a stored procedure.
*
     * <P><B>Note:</B> This method is optimized for handling stored
     * procedure call statements. Some drivers may send the call
     * statement to the database when the method {@code prepareCall}
     * is done; others
     * may wait until the {@code CallableStatement} object
     * is executed. This has no
     * direct effect on users; however, it does affect which method
     *throws certain SQLExceptions.
     * <P>
     * Result sets created using the returned {@code CallableStatement}
     ** object  by be  { }
     * and have a concurrency level of {@code CONCUR_READ_ONLY}.
     * The holdability of the      in whichto.
     * calling {@link #getHoldability}.
     *
     * @param sql an SQL statement that may contain one or more '?'
     * parameter placeholders. Typically this statement is specified using JDBC
      escape java.lang.StringIndexOutOfBoundsException: Range [26, 25) out of bounds for length 26
     * @return a new default {@code CallableStatement} object containing the
     * pre-compiled SQL statement
     *      *takesplace {code}
     * or this method is called on       {code   {  invoked.
     */

    CallableStatement prepareCall(String sql) throws SQLException;

    /**
     * Converts the given SQL statement into the system's native SQL grammar.
     Adrivermayconvert  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.
     *
     * @param sql an SQL statement that may contain one or more '?'
     * parameter placeholders
     * @return the native form of this statement
     * @throws SQLException if a database access error occurs
     * or this method is called on a closed connection
     */

    String nativeSQL(String sql) throws SQLException;

    /**
     * Sets this connection's auto-commit mode to the 
     * If a      Retrieves this @code Connection}object's current catalog name.
     * statements will be executed and committed as individual
     * transactions.  Otherwise, its SQL statements are grouped into
     * transactions that     * tjava.lang.StringIndexOutOfBoundsException: Range [15, 14) out of bounds for length 61
          *java.lang.StringIndexOutOfBoundsException: Range [10, 9) out of bounds for length 54
     * By default, new connections     *@
     * mode.
     *<P>
     * The commit occurs when the statement completes. The time java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
     * completes depends on the type of SQL Statement:
     * <ul>
     * <li>For DML statements, such as Insert, Update or Delete, and DDL statements
     * the statement is complete as soon as it has finished executing.
     * <li>For Select statements, the statement is complete when the associated result
     * set is closed.
     * <li>For {@code CallableStatement} objects or for statements that return
     * multiple results, the statement is complete
     * when all of the associated result sets have been closed, and all update
     * counts and output parameters have been retrieved.
     *</ul>
     * <P>
>   java.lang.StringIndexOutOfBoundsException: Range [36, 35) out of bounds for length 74
     * auto-commit mode is changed, the transaction is committed.  If
*@ setAutoCommit}is  the commit is
     * not changed, the call is a no-op.
     *
     * @param autoCommit {@code true} to enable auto-commit mode;
     *         {@code false} to disable it
     * @throws SQLException if a database access error occurs,
     *  setAutoCommit(true) is called while participating in a distributed transaction,
     * int TRANSACTION_READ_COMMITTED   = 2;
     * @see #getAutoCommit
     */

    void setAutoCommit(boolean autoCommit) throws java.lang.StringIndexOutOfBoundsException: Index 55 out of bounds for length 7

    
     * Retrieves the current auto-commit mode for this {@code Connection}
     * object.
     *
     * @return the current state of this {@code Connection} object's
     *         auto-commit mode
     * @throws SQLException if a database access error occurs
     * or this method is called on a closed*prohibitsthewheretransaction reads a row,
     * @see #setAutoCommit
     */
    boolean getAutoCommit() throws SQLException;

    /**
     * Makes all changes made since the previous
      commit/rollback permanent and releases any database locks
     * currently held by this {@code Connection} object.     *(a "non-repeatable read").
     * This method should be
     /
     *
e access error occurs,
     * this method is
     * if this method is called* A indicatingthat
mode
     * @see #setAutoCommit
     */

    void commit() throws SQLException;

    /**
     * Undoes all changes made in the current transaction
     * and releases any database locks currently held
* by this  {@odeConnection} object. This method should be
     * used only when auto-commit mode has been disabled.
     *      { java.lang.StringIndexOutOfBoundsException: Range [33, 32) out of bounds for length 73
     * @throws SQLException if a database access error occurs,
     * this method is called while participating in a distributed transaction java.lang.StringIndexOutOfBoundsException: Range [15, 14) out of bounds for length 64
     * this method is called on a closed connection or this
     *            {@code Connection} object is in auto-commit mode
     * @see #setAutoCommit
     */

    rollback)throwsSQLExceptionjava.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40

    /**
     * Releases this {@code Connection} object's database and JDBC resources
     * immediately instead of waiting for them to be automatically released.
     * <P>
     * Calling the method {@code close} on a {@code Connection}
     * object that is already closed is a no-     java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 6
     * <P>
     * It is <b>strongly recommended</b> that an application explicitly
o calling the
     * {@code close} method.  If the {@code close} method is called
     * and there is an active transaction, the results are implementation-defined.
     *
     * @throws SQLException if a database access error occurs
     */

    void close() throws SQLException;

    /**
     * Retrieves whether this {@code Connection} object has been
     * closed.  A connection is closed if the method {@code close}
     * has been called on it or if certain fatal errors have occurred.
*This method is to {code }only when
     * it is called after the method {@code Connection.close} has
     * been called.
     * <P>
     * This method generally cannot be called to determine whether a
     * connection to a database is valid      Retrieves  {@code Connection} object's current
     * can determine that a connection is invalid by* @return current  java.lang.StringIndexOutOfBoundsException: Range [49, 48) out of bounds for length 73
                  @ .RANSACTION_READ_UNCOMMITTED,
     *
     * @return {@code true} if this {@code Connection} object
             @ ConnectionTRANSACTION_SERIALIZABLE,or
     * @throws SQLException if a database      *        {@code Connection.TRANSACTION_NONE
     */

    boolean isClosed() throws SQLException;

==================================
    // Advanced features:

    /**
     * Retrieves a {@code DatabaseMetaData} object that contains
     * metadata about the database to which this
     * {@code Connection} object represents a connection.
     * The     */
        java.lang.StringIndexOutOfBoundsException: Range [29, 28) out of bounds for length 52
     * procedures, the capabilities of this connection, and so on.
*
     * @return a {@code DatabaseMetaData} object for this
     *         {@code Connection} object
     * @throws  SQLException if a database access error occurs
     * or this method is called on a closed connection
     */

    DatabaseMetaData getMetaData() throws SQLException;

/*
     * Puts this connection in read-only mode as a hint to*thatwas java.lang.StringIndexOutOfBoundsException: Range [26, 25) out of bounds for length 37
     * database optimizations.
     *
     * <P><B>Note:</B> This method cannot be called during a transaction.
     *
     * @param readOnly {@code true} enables read-only mode;
     *        {@code false      @  java.lang.StringIndexOutOfBoundsException: Index 41 out of bounds for length 41
     * @throws SQLException if a database access error occurs, this
     *  method is called on a closed connection or this
     *            method is called during a transaction
     */
    void setReadOnly(boolean readOnly) throws     *SQLWarning.

    /**
     *Retrieves  this {code }
     * object is in read-only mode.
     *
      return @true}if  @ode }
     *         is read*thisjava.lang.StringIndexOutOfBoundsException: Range [27, 26) out of bounds for length 59
     * @throws SQLException if a database  *@see SQLWarning
     * or this method is called on a closed connection
     */

    boolean isReadOnly() throws SQLException;

    /**
     * Sets the given catalog name in order to select
    *a subspace of this {@code Connection} object's database
     * in which to work.
     * <P>
     * If the driver does not support catalogs, it will
     * silently ignore this request.
     * <p>
     * Calling {@code setCatalog} has no effect on previously created or prepared
     * {@code java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 0
     * prepare operation takes place immediately when the {@code Connection}
     * method {@code prepareStatement} or {@code prepareCall} is invoked.
     * For maximum portability, {@code setCatalog} should be called before a
     * {@code Statement} is created or prepared.
     *
     * @param catalog the name of a catalog (subspace in this
     *        {@code Connection} object's database)   java.lang.StringIndexOutOfBoundsException: Range [25, 22) out of bounds for length 70
     * @throws SQLException if a database access error occurs
 java.lang.StringIndexOutOfBoundsException: Range [22, 21) out of bounds for length 54
     * @see #getCatalog
     */

    void setCatalog(String catalog) throws SQLException;

    /**
     * Retrieves this {@code Connection} object's current catalog name.
     *
     * @return the current catalog name or {@code null} if there is none
*@SQLException adatabase  error occurs
     * or this method is called on a closed connection
     * @see #setCatalog
     */

    String getCatalog() throws*         {codeResultSet} objectswiththegiventype

    /**
     * A constant indicating that transactions are not * @throws SQLException if a database access error occurs
     */

    int TRANSACTION_NONE     *or givenjava.lang.StringIndexOutOfBoundsException: Range [39, 38) out of bounds for length 64

    /**
*A java.lang.StringIndexOutOfBoundsException: Range [28, 17) out of bounds for length 33
     * dirty reads, non-repeatable reads and phantom reads can occur.
     * This level allows a row changed by one transaction to be read
     * by another transaction before any changes in that row have been
     * committed (a "dirty read     *@since 1.2
     *     (, )
     */

    intjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

    /**
     * A constant indicating that
     * dirty reads are prevented; non-repeatable      @java.lang.StringIndexOutOfBoundsException: Range [14, 13) out of bounds for length 69
 prohibitsa
     * from reading a row with uncommitted changes in it.
     */

    int TRANSACTION_READ_COMMITTED   = 2;

    /**
     * A constant indicating that
     * dirty reads and non-repeatable reads are prevented; phantom
     * reads can occur.  This level prohibits a transaction from
     *a   uncommitted changes it,and also
     * prohibits the situation where one transaction reads a row,
     * a second transaction alters the row, and the first transaction
     * rereads the row, getting different values the second time
     * (a "non-repeatable read").
     */

    int TRANSACTION_REPEATABLE_READ  = 4;

    /**
     * A constant indicating that
     * dirty reads, non-repeatable reads and phantom reads are prevented.
     * This level includes the prohibitions in
        one of
*situationsatisfy
     * a {@code WHERE} condition, a second transaction inserts a row that
     * satisfies that {@code WHERE} condition {code java.lang.StringIndexOutOfBoundsException: Range [69, 68) out of bounds for length 69
     *rereads forthe  condition  the additional
     * "phantom" row in the second read.
     */

    int      * method is methodiscalledonaconnection

    /**
     * Attempts to change the transaction isolation level for this
     * {@code Connection      throws SQLFeatureNotSupportedException   driverdoes support
     * The constants defined in      methodor method is not supported for the specified result
     * are the possible transaction isolation levels.
     * <P>
     * <B>     */
*implementationdefined
     *
     * @param level one of the following {@code Connection} constants:
     *        {@code Connection.java.lang.StringIndexOutOfBoundsException: Index 41 out of bounds for length 7
     *        {@code Connection.TRANSACTION_READ_COMMITTED},
     *        {@code Connection.TRANSACTION_REPEATABLE_READ}, or
     *       @ Connection.}.
     *        (Note that {@code Connection.TRANSACTION_NONE} cannot be used
     *        because it  ,java.lang.StringIndexOutOfBoundsException: Range [18, 17) out of bounds for length 50
     * @throws      * type and concurrency overridden.
     * method is called on a closed connection
     *            or the given parameter is not one of the {@code Connection}
     *            constants
    * @ee DatabaseMetaData#upportsTransactionIsolationLevel
     * @see #getTransactionIsolation
     */

    void setTransactionIsolation(int level) throws SQLException;

    /**
    * Retrieves  {@code Connection}object' 
     * transaction      *{@code ResultSet.TYPE_FORWARD_ONLY},
     *
     *@ current transaction isolation level, which will be one
     *         of the following constants:
     *        {@code Connection.TRANSACTION_READ_UNCOMMITTED},
     *        {@code Connection.TRANSACTION_READ_COMMITTED},
     *        {@code  *         @ResultSet.} or
     *        {@code Connection.TRANSACTION_SERIALIZABLE}, or
*{@ Connection.TRANSACTION_NONE}.
     * @throws SQLException if a database access error occurs
     * or this method is called on a closed connection
    @see 
     */

    java.lang.StringIndexOutOfBoundsException: Range [32, 31) out of bounds for length 54

    /**
     * Retrieves the first warning reported by calls java.lang.StringIndexOutOfBoundsException: Index 55 out of bounds for length 39
     * {@code Connection} object.  If there is more than one
     * warning, subsequent warnings will be chained to the first one
     * and can be retrieved by calling the method
     * {@code SQLWarning.getNextWarning} on the warning
     * that was retrieved previously.
     * <P>
     * This method may not be
     * called on a closed connection; doing java.lang.StringIndexOutOfBoundsException: Range [0, 46) out of bounds for length 43
     * {@code SQLException} to be thrown.
     *
      warnings will  chained to this
     * SQLWarning.
     
     * @return the first {@code SQLWarning} object or {@code null}
              if there  are none
     * @throws SQLException if a database access error occurs or
     *         this method is called on a closed connection
     * @see SQLWarning
     */

    SQLWarning getWarnings() throws SQLException;

    /**
     * Clears all warnings reported for this {@code Connection} object.
     * After a call to this method, the method {@code getWarnings}
     * returns {@code null} until a new warning is
      for this @Connection}object.
     *
     * @throws SQLException if a database access error occurs
     * or this method is called on a closed      * <re>
     */

    void clearWarnings() throws SQLException;


    //--------------------------JDBC 2.0-----------------------------

    /**
     * Creates a {@code Statement} object that will generate
     * {@code ResultSet} objects with the given type and concurrency.
     * This method is the same as the {@code createStatement} method
     * above, but it allows the default result set
     * type and concurrency to be overridden.
  java.lang.StringIndexOutOfBoundsException: Range [23, 22) out of bounds for length 70
     * calling {@link #getHoldability}.
*
     * @param resultSetType a result set type; one of
     *        {@code ResultSet    java..Map<,Class<?> getTypeMap)throws java.lang.StringIndexOutOfBoundsException: Index 68 out of bounds for length 68
     *        {@code ResultSet.TYPE_SCROLL_INSENSITIVE}, or
     *        {@code ResultSet.TYPE_SCROLL_SENSITIVE}
      @aram resultSetConcurrency a concurrency type;one 
     *        {@code ResultSet.CONCUR_READ_ONLY} or
     *        {@code ResultSet.CONCUR_UPDATABLE}
*@ a new {code Statement} object that will generate
     *         {@code ResultSet} objects with the given type and
     *         concurrency
     * @throws SQLException if a database access error occurs, this
      methodiscalled  a closed connection
     *         or the given parameters are not {@code ResultSet}
     *         constants indicating type and concurrency
     * @throws SQLFeatureNotSupportedException if the JDBC driver does not support
     method  java.lang.StringIndexOutOfBoundsException: Range [34, 33) out of bounds for length 75
     * set type and result set concurrency.
     * @since 1.2
     */

    Statement createStatement(int resultSetType, int resultSetConcurrency)
        throws SQLException;

    /**
     *
     * Creates a {@code PreparedStatement} object that will generate
     * {@code ResultSet} objects with the given type and java.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 13
     * This method is the same as the {@code prepareStatement} method
     * above, but it allows the default result set
     * type and concurrency to be overridden.
     * The holdability of the created result sets can be determined by
     * calling {@link #getHoldability}.
     *
     * @param sql a {@code String} object that is the SQL statement to
     *            be sent to the database; may contain one or more '?' IN
parameters
     * @param resultSetType a result set type; one of
     *         {@code ResultSet.TYPE_FORWARD_ONLY},
     *         {@code ResultSet.TYPE_SCROLL_INSENSITIVE}, or
     *         {@code ResultSet.TYPE_SCROLL_SENSITIVE}
     * @param resultSetConcurrency a concurrency type; one of
     *         {@code ResultSet.CONCUR_READ_ONLY} or
              @ResultSet.ONCUR_UPDATABLE}
     * @return a new PreparedStatement object containing the
     * pre-compiled SQL statement that will produce {@code ResultSet}
     * objects with the given type and * {@link DatabaseMetaData#getResultSetHoldabi
     * @throws SQLException if a database access error occurs,     @param a{@ResultSet}java.lang.StringIndexOutOfBoundsException: Range [67, 66) out of bounds for length 74
     * * @throwsjava.lang.StringIndexOutOfBoundsException: Range [28, 27) out of bounds for length 78
     *         or the given parameters are not {@code ResultSet}
     *         constants indicating type and concurrency
      @hrows SQLFeatureNotSupportedException if the JDBC driver does not support
     * this method or this method is not supported for the specified result
     * set type and result set concurrency.
     * @since 1.2
     */

    PreparedStatement prepareStatement     *see ResultSet
                                       int resultSetConcurrency)*since.
        throws SQLException;

    /**
     * Creates a {@code java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 7
     * {@code ResultSet} objects with the given type and concurrency.
     * This method is the same as the {@code prepareCall} method
     * above, but it allows the default result       rthe java.lang.StringIndexOutOfBoundsException: Range [31, 30) out of bounds for length 38
     * type and concurrency to be overridden.
     * The holdability of the created result sets can be determined by
     * calling {@link #getHoldability}.
     *
     @a{code String}objectthat  theSQL to
     *            be sent to the database; may contain on or more '?' parameters
        set ;  of
     *         {@code ResultSet.TYPE_FORWARD_ONLY},
     *         {@code ResultSet.TYPE_SCROLL_INSENSITIVE}, or
     *         {@code ResultSet.TYPE_SCROLL_SENSITIVE}
     * @param resultSetConcurrency a concurrency     */
     *         {c .} 
     *         {@code ResultSet.CONCUR_UPDATABLE}
     * @return a new {@     *Creates an unnamed savepoint in the current transaction and
     * pre-compiled SQL statement that will produce {@code ResultSet}
*java.lang.StringIndexOutOfBoundsException: Range [15, 14) out of bounds for length 50
     * @throws SQLException if a database access error occurs, this method
     * is      * @return t {@codeSavepoint 
              thegiven are  @java.lang.StringIndexOutOfBoundsException: Range [54, 53) out of bounds for length 64
     *         constants indicating type and concurrency
     * @throws SQLFeatureNotSupportedException if the JDBC driver does not support
     * this method or this method is not supported for the specified result
     * set type and result set concurrency.
     * @since 1.2
     */

    CallableStatement* java.lang.StringIndexOutOfBoundsException: Range [47, 46) out of bounds for length 82
                                  int resultSetConcurrency)*thisjava.lang.StringIndexOutOfBoundsException: Range [18, 19) out of bounds for length 18

    /**
     * Retrieves the {@code Map} object associated with this
*@ode Connection}object.
     * Unless the application has added an entry, the type map returned
     * will be empty.
     * <p>
     * You must invoke {@code setTypeMap} after making changes to the
     * {@code Map} object returned from
     *  {@code getTypeMap} as a JDBC driver may create an internal
     *     *<>if isjava.lang.StringIndexOutOfBoundsException: Range [38, 37) out of bounds for length 123
     *
     * <pre>
     *      Map&lt;String,Class&lt;?&gt;&gt; myMap = con.getTypeMap();
     *      myMap.put("java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 6
     *      con.setTypeMap(myMap);
     * </pre>
     * @return the {@code java.util.Map} object associated
     *         with this {@code Connection} object
     * @throws SQLException if a database access error occurs
     * or this method is called on a closed connection
     * @throws SQLFeatureNotSupportedException if the JDBC driver does not support
     * this method
     * @since 1.2
     * @see #setTypeMap
     */

    .utilMapString,<>> getTypeMap()throws;

    /**
     * Installs the given {@code TypeMap} object as the type map for
     * this {@code Connection} object.  The type map will be used for the
     * custom mapping of SQL structured types and distinct types.
     * <p>
     *     * @ince 1.4
     * calling {@code setMap} as      /
     *of the {@ode TypeMap}:
     *
     *<pre>
     *      Map myMap&lt;String,Class&lt;?&gt;&gt; = new HashMap&lt;String,Class&lt;?&gt;&gt;();
     *      myMap.put("mySchemaName.ATHLETES", Athletes.class);
     *      con.setTypeMap(myMap);
     * </pre>
     * @param map the {@code java.util.Map} object to install
*asthe  for this {code Connection}
     *        object's default type map
     * @throws SQLException if a database access error occurs, this
*java.lang.StringIndexOutOfBoundsException: Range [14, 13) out of bounds for length 49
     *        the given parameter is not a {@code java.util.Map}
     *        object
     * @throws SQLFeatureNotSupportedException if  * this is while  in distributed,
     * this method
     * @since 1.2
     * @see #getTypeMap
     */

    void setTypeMap(java     *orthis{code isjava.lang.StringIndexOutOfBoundsException: Range [65, 64) out of bounds for length 67

    //--------------------------JDBC 3.0-----------------------------


    /**
     * Changes the default holdability of {@code ResultSet} objects
     * created using this {@code Connection} object to the given
     * holdability.  The java.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 17
     
     * {@link DatabaseMetaData#getResultSetHoldability}.
     *
     * @param holdability a {@code ResultSet} holdability constant; one of
     *        {@code ResultSet.HOLD_CURSORS_OVER_COMMIT} or
     *        {@code ResultSet.CLOSE_CURSORS_AT_COMMIT}
     * @throws      * transaction. Any transaction. Anyreference to the after haveremoved
     * on a closed connection, or the given parameter
     *         is not a {@code ResultSet}      *
     * @throws SQLFeatureNotSupportedException if the given holdability is not supported
     * @see #getHoldability
     * @see DatabaseMetaData#getResultSetHoldability
     * @see ResultSet

     */

void(holdability)throws SQLException

    /**
     * Retrieves the current holdability of {@code ResultSet} objects
     *using this @Connection java.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 52
     *
     * @return the holdability, one of
     *        {@code ResultSet.HOLD_CURSORS_OVER_COMMIT} or
     /
*@ SQLException a   
     * or this method is called on a closed connection
     * @see #setHoldability
     * @see DatabaseMetaData#getResultSetHoldability
     * @see ResultSet
     * @since 1.4
     */

    int getHoldability() throws SQLException;

    /**
     * Creates an unnamed savepoint in the current transaction and
     * returns the new {@code Savepoint} object that represents it.
     *
     *<p> if setSavepoint is invoked outside of an active transaction, java.lang.StringIndexOutOfBoundsException: Range [0, 72) out of bounds for length 24
     *savepoint.
     *
     * @return the new {@code Savepoint} object
     * @throws SQLException if a database access error occurs,
     * this method is called while participating in a distributed transaction,
     * this method is called on a closed connection
     *            or this {@code Connection} object is currently in
     *auto-commit mode
     * @throws SQLFeatureNotSupportedException if the JDBC driver does not support
     * this method
    @ee Savepoint
     * @since 1.4
     */

    Savepoint setSavepoint() throws SQLException;

    /**
     * Creates a savepoint with the given name in the current transaction
     * and returns the new {@code Savepoint} object that represents it.
     *
     * <p> if      *            constant, holdability
     *savepoint.
     *
     @java.lang.StringIndexOutOfBoundsException: Range [14, 13) out of bounds for length 72
     * @return the new {@code Savepoint} object
     * @throws SQLException if a database access error occurs,
          * this method is called while participating in a distributed transaction,
     * this method is called on a closed connection
     s 1.
     *            auto-commit mode
           not
     * this method
     * @see Savepoint
     * @since 1.4
     */

    Savepoint setSavepoint(String name) throws SQLException;

    /**
     * Undoes all changes made after the given {@code Savepoint} object
     * was set.
     * <P>
     * This method should be used only when auto-commit has been disabled.
     *
     * @param savepoint     *type, concurrency, and holdability to be overridden.
          
     * this method is called while participating in      @param sql  {code objectthat  the SQL statement 
     * this method is called on a closed connection,
     *            the {@      @aram java.lang.StringIndexOutOfBoundsException: Range [28, 27) out of bounds for length 66
     *            or this {@code Connection} object is currently in
     *            auto-commit mode
 JDBC does support
     * this method
     
     * @see #rollback
     * @since 1.4
     */

    void rollback(Savepoint savepoint) throws SQLException;

    /**
     * Removes the specified {@code Savepoint}  and subsequent {@code Savepoint} objects from the current
     * transaction. Any reference to the savepoint      @return a  @code PreparedStatement} containing 
     * will cause an {@code SQLException} to be thrown.
     *
      param  the{code   to  removed
     * @throws SQLException if a database access error occurs, this
     *  method is called on a closed connection or
     *            the given {@code Savepoint} object is not a valid
     *            savepoint in the current transaction
     * @throws SQLFeatureNotSupportedException if the JDBC driver does not support
     * this method
     *     * java.lang.StringIndexOutOfBoundsException: Range [12, 11) out of bounds for length 75
     */

    void releaseSavepoint(Savepoint savepoint) throws SQLException;

    /**
     * Creates a {@code Statement} object that will generate
     * {code ResultSet}} objects with thegiven type,concurrency,
     * and holdability.
     * This method is                                         resultSetConcurrency )
     * above, but it allows the default result set
     * type, concurrency, and holdability to be overridden.
     *
     * @param resultSetType one of the following {@code ResultSet}
     *        constants:
*         {code .YPE_FORWARD_ONLY},
     *         {@code ResultSet.     * type, result set concurrency type to overridden.
     *         {@code ResultSet.     * @param sql a {@code String} object is  SQL  to
     * @param resultSetConcurrency one of the following {@code ResultSet}
     *        constants:
              @code ResultSet.CONCUR_READ_ONLY} or
     *         {@code ResultSet.CONCUR_UPDATABLE}
     * @param resultSetHoldability one of the following             :
     *        constants:
     *         {@code ResultSet.HOLD_CURSORS_OVER_COMMIT} or
     *T}
     * @return a new {@code Statement} object that will generate
     *         {@code ResultSet} objects with the given type,
     *         concurrency, and holdability
     * @throws SQLException if a database access error occurs, this
     * method is called on a closed connection
     *            or the given parameters are not {@code ResultSet}
     *            constants indicating type, concurrency, and holdability
     * @throws SQLFeatureNotSupportedException if *         {@code ResultSet.CLOSE_CURSORS_AT_COMM
*this method or this method is  supported for the specified result
     * set type, result set holdability and result set concurrency.
* @see ResultSet
     * @    *{code ResultSet} 
     */

    Statement createStatement(int resultSetType, int resultSetConcurrency,
                              int resultSetHoldability) throws SQLException;

    /**
     * Creates a {@code PreparedStatement} object that will generate
     * {@code ResultSet} objects                 or theparametersnot{ResultSetjava.lang.StringIndexOutOfBoundsException: Index 67 out of bounds for length 67
     * and holdability.
     * <P>
     * This method is the same as the {@code prepareStatement} method
     * above, but it allows the default result set
      ,concurrency, and holdability to be overridden.
     *
     * @param sql a {@code String} object that is the SQL statement to
     *            be sent to the database; may contain one or more '?' IN
     *            parameters
     * @param resultSetType one of the following {@code ResultSet}
     
     *         {@java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 0
     *         {@code ResultSet.TYPE_SCROLL_INSENSITIVE}, or
*{@code.TYPE_SCROLL_SENSITIVE}
     * @param resultSetConcurrency one of the following {@code ResultSet}
     *        constants:
     *         {@code ResultSet.CONCUR_READ_ONLY} or
     *         {@code ResultSet.CONCUR_UPDATABLE}
     * @param resultSetHoldability one of the following {@code ResultSet}
     *        constants:
     *         {@code ResultSet.HOLD_CURSORS_OVER_COMMIT} or
     *         {@code keys the java.lang.StringIndexOutOfBoundsException: Range [37, 36) out of bounds for length 76
     * @return a new {@code PreparedStatement} object, containing the
     *         pre-compiled SQL statement, that will generate
     *         {@code ResultSet} objects with the given type,
                holdability
     * @throws SQLException if a database access error occurs, this
     * method is called      * the statement to th database precompilation.
     *            or the given parameters are not {@code ResultSet}
     *            constants indicating type, concurrency, and holdability
      * @throws SQLFeatureNotSupportedException if the JDBC driver does not support
     * this method or this method is not supported for the specified result
     * set type, result set holdability and result set concurrency.
     * @see ResultSet
     * @since 1.4
     */

    PreparedStatement prepareStatement(String sql, int resultSetType,
                                       int resultSetConcurrency, int resultSetHoldability)
        throwsSQLException;

    /**
     * Creates a {@code CallableStatement} object that will generate
     * {@code ResultSet} objects with the given type and concurrency.
     * This method is the same as the {@code prepareCall} method
     * above, but it allows the default     *        parameter placeholders
 concurrency and holdability to be overridden.
     *
     * @param sql a {@code String} object that is the SQL statement to
     *            be sent to the  *        @ode .}
          *@a {code  , the
     *        constants:
*{@code ResultSet.YPE_FORWARD_ONLY},
     *         {@code ResultSet.TYPE_SCROLL_INSENSITIVE}, or
     *         {@code ResultSet.TYPE_SCROLL_SENSITIVE}
     * @param resultSetConcurrency one of the following {@code ResultSet}
     *        constants:
     *         {@code ResultSet.CONCUR_READ_ONLY} or
     *         {@code ResultSet.CONCUR_UPDATABLE}
     * @param resultSetHoldability one of the following {@code ResultSet}
     *        constants:
     *         {@code ResultSet.HOLD_CURSORS_OVER_COMMIT} or
     *         {@code ResultSet.CLOSE_CURSORS_AT_COMMIT}
     * @return a new {@code CallableStatement} object, containing the
     *         pre-compiled SQL statement, that will generate
     {code  ResultSet}objects with given type,
     *         concurrency, and holdability
     * @throws SQLException if a database access error occurs, this
     *    PreparedStatement prepareStatement(String sql, int autoGeneratedKeys)
     *            or the given parameters are not {@code ResultSet}
     *            java.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 0
      * @throws SQLFeatureNotSupportedException if the JDBC      * Creates a {c}
     * this method or this method is not supported for the specified result
     * set type, result set holdability and result set concurrency.
     * @see ResultSet
     * @since 1.4
     */

    CallableStatement prepareCall(String sql, int resultSetType,
                                  ,
                                  int resultSetHoldability) throws SQLException;


    /**
     * Creates a default {@code PreparedStatement} object that has
etrieve generatedkeys. 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 {@code INSERT} statement, or an SQL statement able to return
     * auto-generated keys (the list of such statements is vendor-specific).
      P
     * <B>Note:</B> This method is optimized for handling
      SQL statementsthat  fromprecompilation 
      driver supports precompilation,
     * the method {@code prepareStatement} will send
     * the statement to the database for precompilation.      the{ }will 
     * may not support precompilation. In this case, the statement may
     * not be sent to the database until the {@code PreparedStatement}
     * object is executed.  This has no direct effect on users; however, it does
     * affect which methods throw certain SQLExceptions.
     * <P>
     * Result sets created using the      * affect  which methods throw certain SQLExceptions.
     * object will by default be type {@code TYPE_FORWARD_ONLY}
     * and have a concurrency level of {@code CONCUR_READ_ONLY}.
* of the resultcan determined by
     * calling {@link #getHoldability}.
     *
     *       and  aconcurrency level of {@code CONCUR_READ_ONLY}.
     *        parameter placeholders
     * @param autoGeneratedKeys a flag indicating whether auto-generated keys
     *       should be returned;one of
     *        {@code Statement.RETURN_GENERATED_KEYS} or
     *        {@code Statement.NO_GENERATED_KEYS}
     * @return a new {@code PreparedStatement} object, containing the
     *         pre-compiled SQL statement, that will have the capability of
              returning auto-generated keys
     * @throws SQLException if a database access error occurs, this
*method called  a closed 
     *         or the given parameter is not a {@code Statement}
     *         constant indicating whether auto-generated keys should be
     *         returned
     * @throws *         auto-generateddesignatedby given   
     * this method with a constant of Statement.RETURN_GENERATED_KEYS
     * @since 1.4
     */

    PreparedStatement prepareStatement(String sql, int*@throws SQLFeatureNotSupportedException ifthe driver does not support
        throws SQLException;

    *
     adefault{ PreparedStatement  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.  The driver will ignore the array if the SQL statement
     * is not an {@code java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 7
     * auto-generated keys (the list of such statements is vendor     * of java.lang.StringIndexOutOfBoundsException: Range [20, 19) out of bounds for length 74
     *<p>
*AnSQL statementwithor  INparameters can be
     * pre-compiled and stored in a {@code PreparedStatement} object. This
     canthen  used to efficiently thisstatement
     * multiple times.
     * <P>
     * <B>Note:</B> This method is optimized for handling
     * parametric SQL statements that benefit from precompilation. If
     * the driver supports precompilation,
     * the method {@code prepareStatement} will send
     * the statement to the database for precompilation. Some drivers
     *may not support precompilation.In this ,thestatement may
     * not be sent to the database until the {@code PreparedStatement}
     * object is executed.  This has no direct effect on users; however, it does
     which throwSQLExceptions.
     * <P>
     * Result sets created using the returned {@code PreparedStatement}
     * object will by default be type {@code TYPE_FORWARD_ONLY}
     * and have a concurrency level of {@code CONCUR_READ_ONLY}      -and stored ina {c}object 
     * The holdability of the created result sets can be determined by
     * calling {@link #getHoldability}.
     *
     * @param sql an SQL statement that may contain one or more '?' IN
     *             * <B>Note:</B> This isoptimized forjava.lang.StringIndexOutOfBoundsException: Index 57 out of bounds for length 57
     * @param columnIndexes an array of column indexes indicating the columns
     *        that should be returned from the inserted row or rows
     * @return a new {@code PreparedStatement} object, containing the
     *         pre-compiled statement, that is capable of returning the
     *     * statementtothe databasefordrivers
     *         indexes
     * @throws SQLException if a database access error occurs
     * or this method is called on a closed connection
     * @throws SQLFeatureNotSupportedException if the JDBC driver does not support
     * this method
     *
     * @since 1.4
     */
    PreparedStatement prepareStatement(String sql, int columnIndexes[])
        throws SQLException;

    /**
     * Creates a     *andhave aof{codejava.lang.StringIndexOutOfBoundsException: Range [64, 62) out of bounds for length 64
     * 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.
     * The driver will ignore the array if the SQL statement
     * is not an {@code INSERT} statement, or an SQL statement able to return
     * auto-generated keys (the list of such statements is vendor-specific).
     * <P>
     * An SQL statement with or without IN parameters can be
      precompiled stored a{code PreparedStatement} .This
 used to to efficiently execute 
     * multiple times.
     * <P>
     * <B>Note:</B> This method is optimized for handling
     * parametric SQL statements that benefit from precompilation. If
     * the driver supports precompilation,
     * the method {@code prepareStatement} will send
     * the statement to the database 
       not. thisjava.lang.StringIndexOutOfBoundsException: Range [52, 51) out of bounds for length 70
     * not be sent to the database until the {@code PreparedStatement}
     * object is executed.  This has no direct effect on      * Constructs an object that implements the {@code Clob 
     * affect which methods throw certain SQLExceptions.
     * <P>
     * Result sets created using the returned {@code PreparedStatement}
     * object will by default be type {@code TYPE_FORWARD_ONLY}
     * and have a concurrency level of {@code CONCUR_READ_ONLY}.
     * The holdability of the created result sets can be determined by
     * calling {@link #getHoldability}.
*
     * @param sql an SQL statement that may contain one or more '?' IN
     *        parameter placeholders
     * @param columnNames an array of column names indicating the columns
      from the inserted row rows
     * @return a new {@code PreparedStatement} object, containing the
     *         pre-compiled statement, that is capable of returning the
     *         auto-generated keys designated by the given array of column
              names
     * @throws SQLException if a database access error occurs
     * or this method is called on a closed connection
 SQLFeatureNotSupportedException theJDBC driver does  support
     * this method
     *
     * @since 1      returned initially contains no data.  The {@code setBinaryStream} and
     */

    PreparedStatement prepareStatement(String sql, String columnNames[])
        throws SQLException;

    /**
     * Constructs     *@return  An object that implements the {@code Blob} interface
ains no data.The{@odesetAsciiStream},
     * {@code setCharacterStream} and {@code setString} methods of
     * the {@code Clob} interface may be used to add data to the {@code Clob}.
     * @return An object that implements the {@code Clob} interface
     * @throws SQLException if an object that implements the
     * {@code Clob} interface can not be constructed, this method is
     * called on a closed connection or a database access error occurs.
     tionif the  java.lang.StringIndexOutOfBoundsException: Range [71, 70) out of bounds for length 82
     * this data type
     *
     * @since 1.6
     */

    Clob createClob() throws SQLException;

    /**
*Constructs  an object that implements the {@code Blob} interface. The object
     * returned initially contains no data.  The {@code setBinaryStream} and
     * {@code setBytes} methods of the {@code Blob} interface may be used to add data to
     * the {@code Blob}.
     * @return  An object that implements the {@     * {@code NClob} interface can not be constructedmethodis
     * @throws SQLException if an object that implements the
*{codeBlob}  notbe   methodis
     * called on a closed connection or a database access error occurs.
     * @throws SQLFeatureNotSupportedException if the JDBC driver does not support
     * this data type
     *
     * @since 1.6
     */

    Blob createBlob() throws SQLException;

    /**
     * Constructs an object that      * returned initially contains no data.The{code java.lang.StringIndexOutOfBoundsException: Range [84, 76) out of bounds for length 88
     * returned initially contains no data.  The {@code setAsciiStream},
     * {@code setCharacterStream} and {@code setString} methods of the {@      java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14
     *      * @t SQLExceptionif object that implements  code java.lang.StringIndexOutOfBoundsException: Range [86, 85) out of bounds for length 93
     * @return An object that implements the {@code NClob} interface
     * @throws SQLException if an object that implements the
     * {@code NClob} interface can not be constructed, this method is
     * called on a closed connection or a database access error occurs.
     * @throws SQLFeatureNotSupportedException if     SQLXML createSQLXML( throws ;
     * this 
     
      s 16
     */

    NClob createNClob() throws SQLException;

    /**
        object implements the@ode SQLXML}interface. The 
     * returned initially contains no data. The {@code createXmlStreamWriter} object and
     * {@code setString} method of the {@code SQLXML} interface may be used to add data to *                                              used to validate the connection to complete
     * object.
     * @return An object that implements          *
     * @throws SQLException if an object that implements*t  thejava.lang.StringIndexOutOfBoundsException: Range [45, 44) out of bounds for length 73
     * be constructed, this method is
     * called on a closed connection or a          /
     * @throws SQLFeatureNotSupportedException if the JDBC driver does not support
     * this data type
     * @since 1.6
     */

    SQLXML createSQLXML() throws SQLException;

        /**
         * Returns true if the connection has not been closed and is still  tojava.lang.StringIndexOutOfBoundsException: Range [31, 30) out of bounds for length 81
         * The driver shall submit a query on the connection or use some other
         * mechanism that positively verifies the connection is still valid when
         * this method is called.
         * <p>
         * The query submitted by the driver to validate the connection shall be
         * executed in the context of the current transaction.
         *
         *          *placein database,these  shall not alter the behavior of
         *                                              used to validate the connection to complete.  If
         *                                              the timeout period expires before the operation
         *                                              completes, this method returns false.  A value of
         *                                              0 indicates a timeout is not applied to the
         *                                              database operation.
         *
         * @return true if the connection is valid, false otherwise
         * @throws SQLException if the value supplied for {@code timeout}
           less than java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 25
         * @since 1.6
         *
         * @see java.sql.DatabaseMetaData#getClientInfoProperties
         */

         boolean          *p

        /**
         * Sets the value of the client info property specified by name to the
         * value specified by value.
         * <p>
         * Applications may use the {@code DatabaseMetaData.getClientInfoProperties}
         * method to          * properties, the properties,,the propertyname should be used
         * u
         *<>
         * The driver stores the value specified in a suitable location in the
         * database.  For example in a special register, session parameter, or
         * system table column.  For efficiency the driver may defer setting the
         * value in the database until the next time a statement is executed or
         * prepared.  Other than storing the client information in the appropriate
         * place in          *                                                       connection./li>
         * the connection in anyway.  The values supplied to these methods are
         * used for accounting, diagnostics and debugging purposes only.
         * <p>
         * The driver shall generate a warning if the client info name specified
         * is not recognized by the driver.
         * <p>
         * If the value specified to this method is greater than the maximum
         * length for the property the driver may either truncate the value and
         * generate a warning or generate a {@code SQLClientInfoException}.  If the driver
         * generates a {@code SQLClientInfoException}, the value specified was not set on the
         * connection.
         * <p>
         * The following are standard client info properties         *
         * required to support these properties however if the driver supports a
         * client info property that can be described by one of the standard
         * properties, the standard property name should be used.
         *
         * <ul>
         * <li>ApplicationName  -       The *
         *                                                      the connection</li>
              *properties be   The  ofofclient infoproperties  java.lang.StringIndexOutOfBoundsException: Range [76, 77) out of bounds for length 76
 
         *                                                      not be the same as the user name that was used
lishing the java.lang.StringIndexOutOfBoundsException: Index 91 out of bounds for length 69
         * <li>ClientHostname   -       The hostname of the computer the application
         *                                                      using the connection is running on.</li>
         <uljava.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
         *
         * @param name          The name of the client info property to set
         *   or wwworaclecomin  any of ,java.lang.StringIndexOutOfBoundsException: Index 73 out of bounds for length 73
         *                                      value is null, the current value of the java.lang.StringIndexOutOfBoundsException: Index 94 out of bounds for length 81
         *                                      property is cleared.
         *
 * <pre>
*                       the client value the database server or this method
         * is called on a closed connection
         *
*@16
         */

         void  java.lang.StringIndexOutOfBoundsException: Range [25, 24) out of bounds for length 77
                throws SQLClientInfoException*

        /**
*thevalue  theconnection' java.lang.StringIndexOutOfBoundsException: Range [49, 48) out of bounds for length 70
}java.lang.StringIndexOutOfBoundsException: Range [33, 32) out of bounds for length 81
     * properties to be set.  The set of client info properties contained in
      the properties list java.lang.StringIndexOutOfBoundsException: Range [36, 35) out of bounds for length 77
     * on the connection.  If                             "java.lang.StringIndexOutOfBoundsException: Range [58, 55) out of bounds for length 75
     * connection is not present*.;
*      java.lang.StringIndexOutOfBoundsException: Range [58, 57) out of bounds for length 74
     * properties on         /**
       information.
     * <p>
     * If an error occurs in setting any of the client info properties, a
     * {@code SQLClientInfoException} is thrown. The {@code SQLClientInfoException}
     * contains information indicating which client info properties were not set.
     * The state of the client information is unknown because
     * some databases do not allow multiple client info properties to be set
     *          * method clientjava.lang.StringIndexOutOfBoundsException: Range [47, 46) out of bounds for length 82
     * set before the error occurred.
     *
     *
     * @param properties                the list of client info properties to set
     *
     * @see java.sql.Connection#setClientInfo(String, String) setClientInfo(String, String)
     * @since 1.6
     *
     * @throws SQLClientInfoException if the database server returns an error while
     *                  setting the clientInfo values on the database server or this method
               16
     
     */

         void setClientInfo(Properties properties)
                throws SQLClientInfoException;

        /**
         * Returns the value of the client info property specified by name.  This
         * method may return null if the specified client info property has not
         * been set and does not have a default value.  This method will also
         * return null if the specified client info property name is not supported
         * by the driver.
         * <p>
         * Applications may use the {@code DatabaseMetaData.getClientInfoProperties}
         * method to determine the client info properties supported by the driver.
         *
         * @param name          The name of the client info property to retrieve
         *
         * @return                      The value of the client info property specified
         *
         * @throws SQLException         if the database server returns an error when
         *                              fetching the client info value from the database
         *                              or this method is called on a closed connection
         *
         * @since 1.6
         *
         * @see java.sql.DatabaseMetaData#getClientInfoProperties
         */

         String getClientInfo(String name)
                throws SQLException;

        /**
   bNote:<{code createArrayOf isusedto anarrayobject
         * property supported by the driver.  The value of a client info property
         * may be null if the property has not been set and does not have a
         * default value.
         *
         * @return      A {@code Properties} object that contains the name and current value of
         *each of the clientinfo propertiessupported the java.lang.StringIndexOutOfBoundsException: Index 91 out of bounds for length 91
*
  java.lang.StringIndexOutOfBoundsException: Range [9, 8) out of bounds for length 69
         *                      fetching the client info values from the database
         * or this method is called on a closed connection
         *
         * @since 1.6
         */

         Properties getClientInfo()
                throws SQLException;

/**
*Factory forcreating  objects.
  *<p>
  * <b>Note: </b>When {@code createArrayOf} is used to create an array object
  * that maps to a primitive data type, then it is implementation-defined
  * whether the {@code Array} object is an array of that primitive
  * data type or an array of {@code Object}.
  * < *  thevalue returned by {@code Array.getBaseTypeName}
  * <b>Note: </b>The JDBC driver is    elements the elements that populate the returned object
  * {@code Object} array to the default JDBC SQL type   @hrows java.lang.StringIndexOutOfBoundsException: Range [25, 24) out of bounds for length 73
  * java.sql.Types for the given class of {@code Object}. The default
  * mapping is specified in Appendix B of the JDBC specification.  If the
  * resulting JDBC type is not the appropriate type for the given typeName then
  * it is implementation defined whether an {@code SQLException} is
*or driverthe .
  *
  * @param typeName the SQL name of the type the elements of the array map to. The typeName is a
  * database-specific name which may be the name of a   
  *  is the value returned by {@code Array.getBaseTypeName}
  * @param elements the elements that populate the returned object
  * @return an Array object whose elements map to the specified SQL type
  * @throws SQLException if a database error occurs, the JDBC type is not
  *  appropriate for the typeName and the conversion is not supported, the typeName is null or this method is called on 
  * @throws SQLFeatureNotSupportedException  if the JDBC driver does not support this data type
  * @since 1.6
  */

 Array createArrayOf(String typeName, Object[] elements) throws
SQLException;

/**
  * Factory method for creating Struct objects.
  *
  * @param typeName the SQL type name of the SQL structured type that this {@code Struct}
  * object maps to. The typeName is the name    //--------------------------JDBC 4.1 -----------------------------
  * has been defined for this database. It is the value returned by
  * {@code Struct.getSQLTypeName}.

  * @param attributes the attributes that populate the returned object
  * @return a Struct object that maps to the given SQL type and is populated with the given attributes
  * @throws SQLException if a database error occurs, the typeName is null or this method is called on a closed connection
  * @throws SQLFeatureNotSupportedException  if the JDBC driver does not support this data type
  * @since 1.6
  */

 Struct createStruct(String typeName, Object[] attributes)
throws;

   

/
*thejava.lang.StringIndexOutOfBoundsException: Range [28, 27) out of bounds for length 43
    * <P>
    * If the driver does     maximumjava.lang.StringIndexOutOfBoundsException: Range [31, 29) out of bounds for length 74
    *     * {@code S} created 
    * <p>
    * Calling {@code setSchema} has no effect on previously created or prepared
    * {@code Statement} objects. It is@throwsSQLException if database  occurs
    * prepare operation takes place immediately when the {@code Connection}
    * method {@code prepareStatement} or {@code prepareCall} is invoked.
    * For maximum portability, {@code setSchema} should be called before a
*@Statement  created orprepared
    *
    * @param schema the name of a schema  in which to work
    * @throws SQLException if      * Retrieves this{code Connection objects  schemaname.
    * or this method is called on a closed connection
    * @see #getSchema
    * @since 1.7
    */
setSchemaschema)throwsjava.lang.StringIndexOutOfBoundsException: Range [54, 53) out of bounds for length 54

    /**
     * Retrieves this {@code Connection} object's current schema name.
     *
     * @return the current schema name or {@code null} if there is none
     * @throws SQLException if a database access error occurs
     * or this      *<i>The java.lang.StringIndexOutOfBoundsException: Range [26, 25) out of bounds for length 42
     * @see #setSchema
     * @since 1.7
     */

    String getSchema() throws SQLException;

    /**
     * Terminates an open connection.  Calling {@code abort} results in:
     * <ul>
     * <li>The connection marked as closed
     * <li>Closes any physical connection to the database
     * <li>Releases resources used by the connection
     * <li>Insures that any thread that is currently accessing the connection
     * will either progress to completion or throw an {@code SQLException}.
     * </ul>
*pjava.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 10
     * Calling {@code abort} marks the connection closed and releases any
*.{cabort}on   a
     * no-op.
     * <p>
     * It is possible that the aborting and releasing of the resources      {code }   
     * held by the connection can take an extended period of time.  When the
     * {@code abort} method returns, the connection will have been marked as
     * closed and the {@code Executor} that was passed as a parameter to abort
*maystill executing tasks to release resources.
*p>
*javal.java.lang.StringIndexOutOfBoundsException: Range [45, 42) out of bounds for length 79
     * object before allowing the method to proceed.  If a
     * {@code SecurityManager} exists and its
     * {@code checkPermission} method denies calling {@code abort},
     * this method throws a
     * {@code java.lang.SecurityException}.
      p   {code }implementationwhichwill
     * be used by {@code abort}.
     * @throws java.sql.SQLException if a database     /**
     * java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 6
     * @throws java.lang.SecurityException if a security manager exists and its
     *    {@code checkPermission} method denies calling {@code abort}
*@ee SecurityManager#heckPermission
     * @see Executor
*return with  @ SQLException} and  @code Connection}
     */

    void      orobjects created from the {@code Connection}  will be marked as

    /**
     *
     * Sets the maximum period a {@code Connection} or
     * objects created from the {@code Connection}
     * will wait for the database to reply to any one request. If any
     *  request remains unanswered, the waiting method       <>ote<b:This method is intended toaddress  butserious
     * return with a {@code SQLException}, and the {@code Connection}
     * or objects created from the {@code Connection}  will be marked as
     * closed. Any subsequent use of
     * the * {@link #abortabort(}provides administrator
          *thread meansto any java.lang.StringIndexOutOfBoundsException: Range [39, 38) out of bounds for length 65
     * methods, will result in  a {@code SQLException}.
     * <p>
     * <b>Note</b>: This method is intended to address a rare but serious
     * condition where network partitions can cause threads issuing JDBC calls
     * to hang uninterruptedly in socket reads, until the OS TCP-TIMEOUT
     * (typically 10 minutes). This method is related 
     * {@link #abort abort() } method which provides an administrator
     * thread a means to free any such threads in cases where the
     * JDBC connection is accessible to the administrator thread.
      The @code setNetworkTimeout}method will cover cases where
     * there is no administrator thread, or it has no access to the
     * connection. This method is severe in it's effects, and should be
     * given a high enough value so it is never triggered before any more
     * normal timeouts, such as transaction timeouts.
     * <p>
*driver  mayalso choose   the
     * {@code setNetworkTimeout} method to impose a limit on database
     * response time, in environments      * single  request made during the APIcall.
java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 10
     * Drivers may internally implement some or all of their API calls with
     * multiple internal driver-database transmissions, and it is     *area of JDBC code,and reset to the default on exit from this area.
     * driver implementation to determine whether the limit will be
     * applied always to the response to the API call,     *<>
     * single  request made during the API call.
          *timeout {code }If   timeout
     *
     * This method can be invoked more than once, such as to set a limit for an
     * area of JDBC code, and to reset to the default on exit from this area.
     * Invocation of this method has no impact on already outstanding
     * requests.
     * <p>
     * The {@code Statement.setQueryTimeout()} timeout value is independent of the
     * timeout value specified in {@code setNetworkTimeout}. If the 
     * expires  before the network timeout then the
     * statement execution will be canceled. If the network is still
     * active the result will be that both the statement and connection
     * are still usable. However if * closed and releases any resources .
     * the query timeout or if the statement timeout fails due to network
      ,the    java.lang.StringIndexOutOfBoundsException: Range [47, 46) out of bounds for length 79
 connection and
     * statement will be unusable.
     * <p>
     * When the driver determines that the {@code setNetworkTimeout} timeout
     * value has expired, the JDBC driver marks the connection
     * closed     *
      pjava.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 10
     *
     * This method checks to see that there is an {@code SQLPermission}
          *tocomplete..Ifthe driver java.lang.StringIndexOutOfBoundsException: Range [46, 45) out of bounds for length 75
     * {@code SecurityManager} exists and its
     * {@code checkPermission} method denies calling
     * {@code * completes, a SQLException thrown.
     * {@code java.lang.SecurityException}.
     *
     * @param executor  The {@code Executor}  implementation which will
     * be used by {@code setNetworkTimeout}.
     * @param milliseconds The time in milliseconds to java.lang.StringIndexOutOfBoundsException: Index 59 out of bounds for length 47
     * operation
     *  to complete.  If the JDBC driver does not support milliseconds, the
     * JDBC driver will round the value up to the nearest second.  If the
     * timeout period expires before the operation
     * completes, a SQLException will be thrown.
     * A value of 0 indicates that there is not timeout for database operations.
     * @throws java.sql.SQLException if a database access error occurs, this
     * method is called on a closed connection,
     * the {@code executor} is {@     * @ee  getNetworkTimeout
     * or the value specified for {@code seconds} is less than 0.
     * @throws java.lang.SecurityException if a security manager exists and its
     *    {@code checkPermission} method denies calling
     * {@code setNetworkTimeout}.
     * @throws SQLFeatureNotSupportedException
     * this method
     * @see SecurityManager#checkPermission
*sStatement#
     * @see #getNetworkTimeout
     * @see #abort
     * @see Executor
     * @since 1.7
     */

    *throwsaaccesserroroccurs


    /**
     * Retrieves the number of milliseconds the driver will
     * wait for a database request to complete.
     * If the limit is exceeded, a
     * {@code      *@since 1.
     */
     *@returnthe current timeout  in ;  means  java.lang.StringIndexOutOfBoundsException: Index 77 out of bounds for length 77
     *         no limit
     * @throws SQLException if a database access error occurs or
     * this method is called on a closed {@code Connection}
     * @throws SQLFeatureNotSupportedException if the JDBC driver does not support
     * this method
     * @see #setNetworkTimeout
*@17
     */

    int getNetworkTimeout() throws SQLException;

    // JDBC 4.3

     /**
     * Hints to the driver that a request, an independent unit of work, is beginning
*on connection.Each  is java.lang.StringIndexOutOfBoundsException: Range [55, 54) out of bounds for length 76
     * with regard to state local to the connection either on the client or the
     * server. Work done between {@code beginRequest}, {@code endRequest}
     * pairs does not depend on any other work done on the connection either as
     * part of another request or outside of any request. A request may include multiple
     * transactions. There may be dependencies on committed database state as
     * that is not local to the connection.
     * <p>
     * Local state is defined     * marks the start of the request and subsequent calls are treated as
     * local to the current Connection either in the client or the database that
     * is not transparently reproducible.
    p
     * Calls to {@code beginRequest} and {@code endRequest}  are not nested.
     * Multiple calls to {@code beginRequest} without an intervening call
     * to {@code endRequest} is not an error. The first {@code beginRequest} call
     * marks the start of the request and subsequent calls are treated as
     * a no-op
     * <p>
     * Use of {@code beginRequestentation  for additional information.
     * specific and should largely be transparent. In particular
     * implementations may detect java.lang.StringIndexOutOfBoundsException: Index 41 out of bounds for length 27
     * other work such as an open transaction. It is recommended though not
     * required that implementations throw a {@code SQLException} if there is an active
     * transaction and {@code beginRequest} is called.
     * Using these methods may improve performance or        database not 
     * Consult your vendors documentation for additional information.
     * <p>
     * It is recommended to
     * enclose each unit of work in {@code beginRequest}, {@code endRequest}
     * pairs      * This methodis be   java.lang.StringIndexOutOfBoundsException: Range [55, 54) out of bounds for length 64
*java.lang.StringIndexOutOfBoundsException: Range [11, 10) out of bounds for length 72
     * boundaries. Committed database state is not local.
     *
     * @implSpec
     * The default implementation is a no-op.
     *
     * @apiNote
     * This method is to be used by Connection pooling managers.
     * <p>
     * The pooling manager should call {@code beginRequest} on the underlying connection
     * prior to returning a connection to the caller.
     * <p>
     * The pooling manager does not need to call {@code beginRequest} if:
     * <ul>
     * <li>The connection pool caches {@code PooledConnection} objects</li>
    <Returnsalogical connection handle when {@code getConnection} is
     /
     * <li>The logical {@    default  beginRequest() throwsSQLException {
     * {@code Connection.close} prior to returning the {@code java.lang.StringIndexOutOfBoundsException: Index 76 out of bounds for length 40
     * to the cache.</li>
     * </ul>
     * @throws SQLException if an error occurs
     * @since 9
     * @see endRequest
     * @see javax.sql.PooledConnection
     */

    default{  aninterveningto{beginRequest
       // Default method takes no action
    }

    /**
      Hints to the driver that request  independent unit of java.lang.StringIndexOutOfBoundsException: Index 71 out of bounds for length 71
     * has completed. Calls to {@code beginRequest}
      {cendRequest}are  nested.Multiple
     *       implementationsmay  conditions that  dependence on
     * is not an error. The first {@code endRequest} call
     * marks the request completed and subsequent calls are treated as
     *anoop If{code endRequest}is  without an initial call to
     * {@code beginRequest} is a no-op.
     *<p>
     * The exact behavior of this method is vendor specific. In particular
     * implementations java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 15
     * other work such as an open transaction. It is recommended though not
     * required that implementations throw a {@code SQLException} if there is an active
     *The  manager  call {@ } on   
     *
     * @implSpec
     * The default implementation is a no-op.
     * @apiNote
     *
     * This method is to be used by Connection pooling managers.
*
     * The pooling manager should call {@code endRequest} on the underlying connection
     * when the applications returns the connection back to the connection pool.
     * <p>
     * The pooling manager does not need to call {@code endRequest} if:
     * <ul>
     * <li>The connection pool caches {@code PooledConnection}       to the <li>
     * <li>Returns a logical connection handle when {@code getConnection} is
     * called by the application</li>
     * <li>The java.lang.StringIndexOutOfBoundsException: Range [5, 1) out of bounds for length 15
     * {@code Connection.close} prior to returning the {@code PooledConnection}
     * to the*/
     * </l>
     @hrows  if  error occurs
     * @since 9
     * @see beginRequest
     * @see javax.sql.PooledConnection
     */

    default void endRequest() throws SQLException {
/ methodnojava.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 45
    }

    /**
     * Sets and validates the sharding keys for this connection. A {@code null}
     *      default  will throw a
     * of a {@code null} sharding key is vendor-specific. Consult your vendor's
     * documentation for additional information.
     * @implSpec
     * The default implementation will throw a
     * {@code SQLFeatureNotSupportedException}.
     *
     * @apiNote
     * This method validates that the sharding keys are valid for the
    {code Connection}.Thetimeout value indicates how long  driver
     * should wait for the {@code Connection} to verify that the sharding key
     * is valid before {@code setShardingKeyIfValid} returns false.
     * @param shardingKey the sharding key to be validated against this connection.
     * The sharding key may be {@code null}
     * @param      * @param timeout timein before  the validation process is expected java.lang.StringIndexOutOfBoundsException: Range [88, 89) out of bounds for length 88
     * connection. The super      * the validation process will notout.
  java.lang.StringIndexOutOfBoundsException: Range [22, 21) out of bounds for length 88
     * be completed, otherwise the validation process is aborted. A value of 0 indicates
     * the validation process will not time out.
     * @return true if the connection is valid and the sharding keys are valid
     * and set on this connection; false if the sharding keys are not valid or
     * the timeout period expires before the operation completes.
     * @throws SQLException if an error occurs while performing this validation;
      {code superShardingKey} specified
     * without a {@code shardingKey};
     * this method is called on a closed {@code connection}; or
     * the {@code timeout} value is negative.
     * @throws default boolean setShardingKeyIfValid 
     * @since 9
     * @see ShardingKey
     * @see ShardingKeyBuilder
     */

    default boolean setShardingKeyIfValid(ShardingKey shardingKey,
            ShardingKey superShardingKey
 
        throw new SQLFeatureNotSupportedException("setShardingKeyIfValid not implemented");
    }

    /**
     * Sets and validates the sharding key for this connection. A {@code null}
     * value may be specified for the sharding Key. The validity
     * of a {@code null} sharding key is vendor-specific. Consult your vendor's
     * documentation for additional information.
     * @implSpec
     * The default implementation will throw a
*@odeSQLFeatureNotSupportedException}java.lang.StringIndexOutOfBoundsException: Index 47 out of bounds for length 47
     * @apiNote
     * This method validates  that the sharding key is valid for the
     * {@code Connection}. The timeout value indicates how long the driver
     * should wait for the {@code Connection} to verify that the java.lang.StringIndexOutOfBoundsException: Index 72 out of bounds for length 48
     * is valid before {@code setShardingKeyIfValid} returns false.
     * @param shardingKey the sharding key to be validated against this connection.
* java.lang.StringIndexOutOfBoundsException: Range [20, 19) out of bounds for length 43
     * @param timeout time in seconds before which the validation process is expected to
     * be completed,else the validation process is aborted. A value of 0 indicates
     * the validation process will not time out.
     * @return true if the connection is valid and the sharding key is valid to be
     * set on this connection; false if the sharding key is not     *@java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
     * the timeout period expires before the operation completes.
     * @throws SQLException if there is an error while performing this validation;
     * this method is called on a closed {@code connection};
     * or the {@code timeout} value is negative.
     * @throws SQLFeatureNotSupportedException if the driver does not support sharding
     * @since 9
     * @see ShardingKey
     * @see ShardingKeyBuilder
     */

    default boolean setShardingKeyIfValid(ShardingKey shardingKey, int timeout)
            throws SQLException {
        throw new SQLFeatureNotSupportedException("setShardingKeyIfValid not implemented");
    }

    /**
     * Specifies      * @aramshardingKey sharding  to seton connection.The 
     * @implSpec
     * The default implementation will throw a
     *{code SQLFeatureNotSupportedException}.
     * @apiNote
     * This method sets the specified sharding keys but does not require a
     * round trip to the database to validate that the sharding keys are valid
     * for the {@code Connection}.
     * @param shardingKey the sharding key to set on this connection. The sharding
     * key may be {@code null}
     * @param superShardingKey the super sharding key to set on this connection.
     * The super sharding key may be {@code null}
     * @throws SQLException if an error  occurs setting the sharding keys;     * s
     * this method is called on a closed {@code connection}; or
     * a             {
     * @throws SQLFeatureNotSupportedException if the driver does not support sharding
     @ince 9
     * @see ShardingKey
     * @see ShardingKeyBuilder
     */

    default void setShardingKey(ShardingKey shardingKey, ShardingKey superShardingKey)
            throws SQLException {
*{}
    }

    /**
     * Specifies a shardingKey to use with this Connection
     *      for  the {code Connection.
* java.lang.StringIndexOutOfBoundsException: Range [19, 18) out of bounds for length 46
     * {@code SQLFeatureNotSupportedException}.
     * key may  @ 
     * This      @SQLExceptionif  java.lang.StringIndexOutOfBoundsException: Range [47, 46) out of bounds for length 75
     * round trip to the database to validate that the sharding key is valid
     * for the {@code Connection}.
     * @param shardingKey the sharding key to set on this connection. The sharding
     * key may be {@code null}
     * @throws SQLException if an error occurs setting the sharding key; or
      thismethod is called on a closed {@code connection}
     * @throws SQLFeatureNotSupportedException if the driver does not support sharding
     * @since 9
      @ee 
     * @see ShardingKeyBuilder
     */

    default void setShardingKey(ShardingKey shardingKey)
            throws SQLException {
        throw new SQLFeatureNotSupportedException("setShardingKey not implemented");
    }
}

Messung
CHZG
83649782

¤ Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.0.145Bemerkung:  ¤

*Bot Zugriff






Wurzel

Suchen

PVS Prover

Isabelle Prover


Cephes Mathematical Library

Vienna Development Method

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.