Package com.clickhouse.jdbc.internal

# Class StreamBasedPreparedStatement

java.lang.Object
com.clickhouse.jdbc.JdbcWrapper
com.clickhouse.jdbc.internal.ClickHouseStatementImpl
com.clickhouse.jdbc.internal.AbstractPreparedStatement
com.clickhouse.jdbc.internal.StreamBasedPreparedStatement

All Implemented Interfaces:
  `com.clickhouse.config.ClickHouseConfigChangeListener<com.clickhouse.client.ClickHouseRequest<?>>`, `ClickHousePreparedStatement`, `ClickHouseStatement`, `AutoCloseable`, `PreparedStatement`, `Statement`, `Wrapper`

public class StreamBasedPreparedStatement extends AbstractPreparedStatement implements ClickHousePreparedStatement

## Field Summary

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

`mapper, 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
Modifier
Constructor
Description
`protected`
`StreamBasedPreparedStatement(ClickHouseConnectionImpl connection, com.clickhouse.client.ClickHouseRequest<?> request, ClickHouseSqlStatement parsedStmt, int resultSetType, int resultSetConcurrency, int resultSetHoldability)`

## Method Summary

Modifier and Type
Method
Description
`void`
`addBatch()`
`void`
`clearBatch()`
`void`
`clearParameters()`
`protected void`
`ensureParams()`
`boolean`
`execute()`
`protected long[]`
`executeAny(boolean asBatch)`
`long`
`executeLargeUpdate()`
`ResultSet`
`executeQuery()`
`protected int`
`getMaxParameterIndex()`
`ParameterMetaData`
`getParameterMetaData()`
`protected String`
`getSql()`
`void`
`setArray(int parameterIndex, Array x)`
`void`
`setBigDecimal(int parameterIndex, BigDecimal x)`
`void`
`setBinaryStream(int parameterIndex, InputStream 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)`

### 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, toArrayIndex`

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

`cancel, clearWarnings, close, closeOnCompletion, ensureOpen, executeBatch, executeInsert, executeStatement, executeStatement, getConfig, getConnection, getDataProcessor, getDataProcessor, getFetchDirection, getFetchSize, getFile, getGeneratedKeys, getLargeMaxRows, getLargeUpdateCount, getLastStatement, getMaxFieldSize, getMaxRows, getMoreResults, getMoreResults, getNullAsDefault, getQueryTimeout, getRequest, getResultSet, getResultSetConcurrency, getResultSetHoldability, getResultSetType, getUpdateCount, getWarnings, isClosed, isCloseOnCompletion, isPoolable, isWrapperFor, newEmptyResultSet, optionChanged, parseSqlStatements, processSqlStatement, resetDataProcessor, setCursorName, setEscapeProcessing, setFetchDirection, setFetchSize, setLargeMaxRows, setLastStatement, setMaxFieldSize, setMaxRows, setNullAsDefault, setPoolable, setQueryTimeout, settingChanged, 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.config.ClickHouseConfigChangeListener

`propertyChanged`

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

`getMetaData, setAsciiStream, setAsciiStream, setAsciiStream, 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 Details

### StreamBasedPreparedStatement

protected StreamBasedPreparedStatement(ClickHouseConnectionImpl connection, com.clickhouse.client.ClickHouseRequest<?> request, ClickHouseSqlStatement parsedStmt, int resultSetType, int resultSetConcurrency, int resultSetHoldability) throws SQLException

Throws:
  `SQLException`

## Method Details

### ensureParams

protected void ensureParams() throws SQLException

Throws:
  `SQLException`

### executeAny

protected long[] executeAny(boolean asBatch) throws SQLException

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

### getMaxParameterIndex

protected int getMaxParameterIndex()

Specified by:
  `getMaxParameterIndex` in class `AbstractPreparedStatement`

### getSql

protected String getSql()

### 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`

### setBinaryStream

public void setBinaryStream(int parameterIndex, InputStream x) throws SQLException

Specified by:
  `setBinaryStream` in interface `ClickHousePreparedStatement`
Specified by:
  `setBinaryStream` 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`