Package com.clickhouse.jdbc.internal

## Class SqlBasedPreparedStatement

- java.lang.Object
- - com.clickhouse.jdbc.JdbcWrapper
  - - com.clickhouse.jdbc.internal.ClickHouseStatementImpl
    - - com.clickhouse.jdbc.internal.AbstractPreparedStatement
      - - com.clickhouse.jdbc.internal.SqlBasedPreparedStatement

All Implemented Interfaces:
  `ClickHousePreparedStatement`, `ClickHouseStatement`, `AutoCloseable`, `PreparedStatement`, `Statement`, `Wrapper`

    public class SqlBasedPreparedStatement
    extends AbstractPreparedStatement
    implements ClickHousePreparedStatement

### Field Summary

### Fields inherited from class com.clickhouse.jdbc.internal.ClickHouseStatementImpl

`parsedStmts`

### Fields inherited from interface java.sql.Statement

`CLOSE_ALL_RESULTS, CLOSE_CURRENT_RESULT, EXECUTE_FAILED, KEEP_CURRENT_RESULT, NO_GENERATED_KEYS, RETURN_GENERATED_KEYS, SUCCESS_NO_INFO`

### Constructor Summary

Constructors
`protected` `SqlBasedPreparedStatement​(ClickHouseConnectionImpl connection, ClickHouseRequest<?> request, ClickHouseSqlStatement parsedStmt, int resultSetType, int resultSetConcurrency, int resultSetHoldability)`

### Method Summary

All Methods Instance Methods Concrete Methods
`void` `addBatch()`
`void` `clearBatch()`
`void` `clearParameters()`
`protected void` `ensureParams()`
`boolean` `execute()`
`protected long[]` `executeAny​(boolean asBatch)`
`long` `executeLargeUpdate()`
`ResultSet` `executeQuery()`
`ParameterMetaData` `getParameterMetaData()`
`void` `setArray​(int parameterIndex, Array x)`
`void` `setBigDecimal​(int parameterIndex, BigDecimal x)`
`void` `setByte​(int parameterIndex, byte x)`
`void` `setBytes​(int parameterIndex, byte[] x)`
`void` `setDate​(int parameterIndex, Date x, Calendar cal)`
`void` `setDouble​(int parameterIndex, double x)`
`void` `setFloat​(int parameterIndex, float x)`
`void` `setInt​(int parameterIndex, int x)`
`void` `setLong​(int parameterIndex, long x)`
`void` `setNull​(int parameterIndex, int sqlType, String typeName)`
`void` `setObject​(int parameterIndex, Object x)`
`void` `setObject​(int parameterIndex, Object x, int targetSqlType, int scaleOrLength)`
`void` `setShort​(int parameterIndex, short x)`
`void` `setString​(int parameterIndex, String x)`
`void` `setTime​(int parameterIndex, Time x, Calendar cal)`
`void` `setTimestamp​(int parameterIndex, Timestamp x, Calendar cal)`
`protected int` `toArrayIndex​(int parameterIndex)`

### Methods inherited from class com.clickhouse.jdbc.internal.AbstractPreparedStatement

`addBatch, execute, execute, execute, execute, executeLargeBatch, executeLargeUpdate, executeLargeUpdate, executeLargeUpdate, executeLargeUpdate, executeQuery, executeUpdate, executeUpdate, executeUpdate, executeUpdate, executeUpdate`

### Methods inherited from class com.clickhouse.jdbc.internal.ClickHouseStatementImpl

`cancel, clearWarnings, close, closeOnCompletion, ensureOpen, executeBatch, executeInsert, executeStatement, executeStatement, getConfig, getConnection, getFetchDirection, getFetchSize, getGeneratedKeys, getLargeMaxRows, getLargeUpdateCount, getLastStatement, getMaxFieldSize, getMaxRows, getMoreResults, getMoreResults, getQueryTimeout, getRequest, getResultSet, getResultSetConcurrency, getResultSetHoldability, getResultSetType, getUpdateCount, getWarnings, isClosed, isCloseOnCompletion, isPoolable, isWrapperFor, newEmptyResultSet, parseSqlStatements, setCursorName, setEscapeProcessing, setFetchDirection, setFetchSize, setLargeMaxRows, setLastStatement, setMaxFieldSize, setMaxRows, setPoolable, setQueryTimeout, unwrap, updateResult`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface com.clickhouse.jdbc.ClickHousePreparedStatement

`getMetaData, setAsciiStream, setAsciiStream, setAsciiStream, setBinaryStream, setBinaryStream, setBinaryStream, setBlob, setBlob, setBlob, setBoolean, setCharacterStream, setCharacterStream, setCharacterStream, setClob, setClob, setClob, setDate, setNCharacterStream, setNCharacterStream, setNClob, setNClob, setNClob, setNString, setNull, setObject, setRef, setRowId, setSQLXML, setTime, setTimestamp, setUnicodeStream, setURL`

### Methods inherited from interface com.clickhouse.jdbc.ClickHouseStatement

`write`

### Methods inherited from interface java.sql.PreparedStatement

`executeUpdate, setObject, setObject`

### Methods inherited from interface java.sql.Statement

`addBatch, cancel, clearWarnings, close, closeOnCompletion, enquoteIdentifier, enquoteLiteral, enquoteNCharLiteral, execute, execute, execute, execute, executeBatch, executeLargeBatch, executeLargeUpdate, executeLargeUpdate, executeLargeUpdate, executeLargeUpdate, executeQuery, executeUpdate, executeUpdate, executeUpdate, executeUpdate, getFetchDirection, getFetchSize, getGeneratedKeys, getLargeMaxRows, getLargeUpdateCount, getMaxFieldSize, getMaxRows, getMoreResults, getMoreResults, getQueryTimeout, getResultSet, getResultSetConcurrency, getResultSetHoldability, getResultSetType, getUpdateCount, getWarnings, isClosed, isCloseOnCompletion, isPoolable, isSimpleIdentifier, setCursorName, setEscapeProcessing, setFetchDirection, setFetchSize, setLargeMaxRows, setMaxFieldSize, setMaxRows, setPoolable, setQueryTimeout`

### Methods inherited from interface java.sql.Wrapper

`isWrapperFor, unwrap`

### Constructor Detail

#### SqlBasedPreparedStatement

    protected SqlBasedPreparedStatement​(ClickHouseConnectionImpl connection,
                                        ClickHouseRequest<?> request,
                                        ClickHouseSqlStatement parsedStmt,
                                        int resultSetType,
                                        int resultSetConcurrency,
                                        int resultSetHoldability)
                                 throws SQLException

Throws:
  `SQLException`

### Method Detail

#### ensureParams

    protected void ensureParams()
                         throws SQLException

Throws:
  `SQLException`

#### executeAny

    protected long[] executeAny​(boolean asBatch)
                         throws SQLException

Specified by:
  `executeAny` in class `AbstractPreparedStatement`
Throws:
  `SQLException`

#### toArrayIndex

    protected int toArrayIndex​(int parameterIndex)
                        throws SQLException

Throws:
  `SQLException`

#### executeQuery

    public ResultSet executeQuery()
                           throws SQLException

Specified by:
  `executeQuery` in interface `PreparedStatement`
Throws:
  `SQLException`

#### executeLargeUpdate

    public long executeLargeUpdate()
                            throws SQLException

Specified by:
  `executeLargeUpdate` in interface `PreparedStatement`
Throws:
  `SQLException`

#### setByte

    public void setByte​(int parameterIndex,
                        byte x)
                 throws SQLException

Specified by:
  `setByte` in interface `PreparedStatement`
Throws:
  `SQLException`

#### setShort

    public void setShort​(int parameterIndex,
                         short x)
                  throws SQLException

Specified by:
  `setShort` in interface `PreparedStatement`
Throws:
  `SQLException`

#### setInt

    public void setInt​(int parameterIndex,
                       int x)
                throws SQLException

Specified by:
  `setInt` in interface `PreparedStatement`
Throws:
  `SQLException`

#### setLong

    public void setLong​(int parameterIndex,
                        long x)
                 throws SQLException

Specified by:
  `setLong` in interface `PreparedStatement`
Throws:
  `SQLException`

#### setFloat

    public void setFloat​(int parameterIndex,
                         float x)
                  throws SQLException

Specified by:
  `setFloat` in interface `PreparedStatement`
Throws:
  `SQLException`

#### setDouble

    public void setDouble​(int parameterIndex,
                          double x)
                   throws SQLException

Specified by:
  `setDouble` in interface `PreparedStatement`
Throws:
  `SQLException`

#### setBigDecimal

    public void setBigDecimal​(int parameterIndex,
                              BigDecimal x)
                       throws SQLException

Specified by:
  `setBigDecimal` in interface `PreparedStatement`
Throws:
  `SQLException`

#### setString

    public void setString​(int parameterIndex,
                          String x)
                   throws SQLException

Specified by:
  `setString` in interface `PreparedStatement`
Throws:
  `SQLException`

#### setBytes

    public void setBytes​(int parameterIndex,
                         byte[] x)
                  throws SQLException

Specified by:
  `setBytes` in interface `PreparedStatement`
Throws:
  `SQLException`

#### clearParameters

    public void clearParameters()
                         throws SQLException

Specified by:
  `clearParameters` in interface `PreparedStatement`
Throws:
  `SQLException`

#### setObject

    public void setObject​(int parameterIndex,
                          Object x)
                   throws SQLException

Specified by:
  `setObject` in interface `PreparedStatement`
Throws:
  `SQLException`

#### execute

    public boolean execute()
                    throws SQLException

Specified by:
  `execute` in interface `PreparedStatement`
Throws:
  `SQLException`

#### addBatch

    public void addBatch()
                  throws SQLException

Specified by:
  `addBatch` in interface `PreparedStatement`
Throws:
  `SQLException`

#### clearBatch

    public void clearBatch()
                    throws SQLException

Specified by:
  `clearBatch` in interface `Statement`
Overrides:
  `clearBatch` in class `ClickHouseStatementImpl`
Throws:
  `SQLException`

#### setArray

    public void setArray​(int parameterIndex,
                         Array x)
                  throws SQLException

Specified by:
  `setArray` in interface `PreparedStatement`
Throws:
  `SQLException`

#### setDate

    public void setDate​(int parameterIndex,
                        Date x,
                        Calendar cal)
                 throws SQLException

Specified by:
  `setDate` in interface `PreparedStatement`
Throws:
  `SQLException`

#### setTime

    public void setTime​(int parameterIndex,
                        Time x,
                        Calendar cal)
                 throws SQLException

Specified by:
  `setTime` in interface `PreparedStatement`
Throws:
  `SQLException`

#### setTimestamp

    public void setTimestamp​(int parameterIndex,
                             Timestamp x,
                             Calendar cal)
                      throws SQLException

Specified by:
  `setTimestamp` in interface `PreparedStatement`
Throws:
  `SQLException`

#### setNull

    public void setNull​(int parameterIndex,
                        int sqlType,
                        String typeName)
                 throws SQLException

Specified by:
  `setNull` in interface `PreparedStatement`
Throws:
  `SQLException`

#### getParameterMetaData

    public ParameterMetaData getParameterMetaData()
                                           throws SQLException

Specified by:
  `getParameterMetaData` in interface `PreparedStatement`
Throws:
  `SQLException`

#### setObject

    public void setObject​(int parameterIndex,
                          Object x,
                          int targetSqlType,
                          int scaleOrLength)
                   throws SQLException

Specified by:
  `setObject` in interface `PreparedStatement`
Throws:
  `SQLException`