com.mysql.jdbc

## Class JDBC4ServerPreparedStatement

- java.lang.Object
- - com.mysql.jdbc.StatementImpl
  - - com.mysql.jdbc.PreparedStatement
    - - com.mysql.jdbc.ServerPreparedStatement
      - - com.mysql.jdbc.JDBC4ServerPreparedStatement

All Implemented Interfaces:
  java.sql.PreparedStatement, java.sql.Statement, java.sql.Wrapper

    public class JDBC4ServerPreparedStatement
    extends ServerPreparedStatement

### Nested Class Summary

### Nested classes/interfaces inherited from class com.mysql.jdbc.ServerPreparedStatement

`ServerPreparedStatement.BatchedBindValues, ServerPreparedStatement.BindValue`

### Nested classes/interfaces inherited from class com.mysql.jdbc.PreparedStatement

`PreparedStatement.AppendingBatchVisitor, PreparedStatement.BatchParams, PreparedStatement.BatchVisitor, PreparedStatement.EmulatedPreparedStatementBindings, PreparedStatement.EndPoint, PreparedStatement.ParseInfo`

### Nested classes/interfaces inherited from class com.mysql.jdbc.StatementImpl

`StatementImpl.CancelTask`

### Field Summary

### Fields inherited from class com.mysql.jdbc.ServerPreparedStatement

`BLOB_STREAM_READ_BUF_SIZE, isCached`

### Fields inherited from class com.mysql.jdbc.PreparedStatement

`batchCommandIndex, batchedValuesClause, batchHasPlainStatements, firstCharOfStmt, hasLimitClause, isLoadDataQuery, isNull, numberOfExecutions, originalSql, parameterCount, parameterMetaData, parameterTypes, parseInfo, rewrittenBatchSize, serverSupportsFracSecs, useTrueBoolean, usingAnsiMode`

### Fields inherited from class com.mysql.jdbc.StatementImpl

`batchedArgs, batchedGeneratedKeys, cancelTimeoutMutex, charConverter, charEncoding, clearWarningsCalled, connection, connectionId, continueBatchOnError, currentCatalog, doEscapeProcessing, eventSink, generatedKeysResults, holdResultsOpenOverClose, isClosed, lastInsertId, lastQueryIsOnDupKeyUpdate, maxFieldSize, maxRows, maxRowsChanged, openResults, pedantic, PING_MARKER, pingTarget, pointOfOrigin, profileSQL, results, resultSetConcurrency, resultSetType, retrieveGeneratedKeys, statementCounter, statementExecuting, statementId, timeoutInMillis, updateCount, useLegacyDatetimeCode, USES_VARIABLES_FALSE, USES_VARIABLES_TRUE, USES_VARIABLES_UNKNOWN, useUsageAdvisor, version5013OrNewer, warningChain, wasCancelled, wasCancelledByTimeout`

### 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
Constructor and Description
`JDBC4ServerPreparedStatement(MySQLConnection conn, java.lang.String sql, java.lang.String catalog, int resultSetType, int resultSetConcurrency)`

### Method Summary

Methods
`void` `setNCharacterStream(int parameterIndex, java.io.Reader reader, long length)` JDBC 2.0 When a very large UNICODE value is input to a LONGVARCHAR parameter, it may be more practical to send it via a java.io.Reader.
`void` `setNClob(int parameterIndex, java.sql.NClob x)`
`void` `setNClob(int parameterIndex, java.io.Reader reader, long length)` JDBC 4.0 Set a NCLOB parameter.
`void` `setNString(int parameterIndex, java.lang.String x)` Set a parameter to a Java String value.
`void` `setRowId(int parameterIndex, java.sql.RowId x)`
`void` `setSQLXML(int parameterIndex, java.sql.SQLXML xmlObject)`

### Methods inherited from class com.mysql.jdbc.ServerPreparedStatement

`addBatch, asSql, canRewriteAsMultiValueInsertAtSqlLevel, canRewriteAsMultivalueInsertStatement, checkClosed, clearParameters, close, computeMaxParameterSetSizeAndBatchSize, containsOnDuplicateKeyUpdateInSQL, executeBatchSerially, executeInternal, fillSendPacket, fillSendPacket, getBinding, getBytes, getInstance, getLocationOfOnDuplicateKeyUpdate, getMetaData, getParameterBindValues, getParameterMetaData, getServerStatementId, isNull, isOnDuplicateKeyUpdate, prepareBatchedInsertSQL, realClose, rePrepare, setArray, setAsciiStream, setBigDecimal, setBinaryStream, setBlob, setBoolean, setByte, setBytes, setCharacterStream, setClob, setClosed, setDate, setDate, setDouble, setFloat, setInt, setLong, setNull, setNull, setOneBatchedParameterSet, setRef, setShort, setString, setTime, setTime, setTimeInternal, setTimestamp, setTimestamp, setTimestampInternal, setType, setUnicodeStream, setURL, toString`

### Methods inherited from class com.mysql.jdbc.PreparedStatement

`addBatch, asSql, canRewrite, checkBounds, checkReadOnlySafeStatement, clearBatch, computeBatchSize, detectFractionalSecondsSupport, execute, executeBatch, executeBatchedInserts, executePreparedBatchAsMultiStatement, executeQuery, executeUpdate, executeUpdate, executeUpdate, getBytesRepresentation, getBytesRepresentationForBatch, getDateTime, getInstance, getInstance, getInstance, getNonRewrittenSql, getParameterBindings, getParameterIndexOffset, getParseInfo, getPreparedSql, getRewrittenBatchSize, getUpdateCount, getValuesClause, isSelectQuery, readFully, setAsciiStream, setAsciiStream, setBinaryStream, setBinaryStream, setBlob, setBlob, setBytes, setBytesNoEscape, setBytesNoEscapeNoQuotes, setCharacterStream, setCharacterStream, setClob, setClob, setInternal, setInternal, setNCharacterStream, setNClob, setObject, setObject, setObject, setRetrieveGeneratedKeys`

### Methods inherited from class com.mysql.jdbc.StatementImpl

`cancel, checkForDml, checkNullOrEmptyQuery, clearWarnings, closeAllOpenResults, closeOnCompletion, containsOnDuplicateKeyInString, createStreamingResultSet, disableStreamingResults, doPingInstead, enableStreamingResults, execute, execute, execute, execute, executeQuery, executeSimpleNonQuery, executeUpdate, executeUpdate, executeUpdate, executeUpdate, executeUpdate, findStartOfStatement, generatePingResultSet, getBatchedArgs, getBatchedGeneratedKeys, getBatchedGeneratedKeys, getCalendarInstanceForSessionOrNew, getConnection, getExceptionInterceptor, getFetchDirection, getFetchSize, getGeneratedKeys, getGeneratedKeysInternal, getGeneratedKeysInternal, getId, getLastInsertID, getLocalInfileInputStream, getLongUpdateCount, getMaxFieldSize, getMaxRows, getMoreResults, getMoreResults, getOnDuplicateKeyLocation, getOpenResultSetCount, getQueryTimeout, getResultSet, getResultSetConcurrency, getResultSetHoldability, getResultSetInternal, getResultSetType, getWarnings, handleExceptionForBatch, hasDeadlockOrTimeoutRolledBackTx, isClosed, isCloseOnCompletion, isPoolable, isWrapperFor, processMultiCountsAndKeys, removeOpenResultSet, resetCancelledState, setCursorName, setEscapeProcessing, setFetchDirection, setFetchSize, setHoldResultsOpenOverClose, setLocalInfileInputStream, setMaxFieldSize, setMaxRows, setPingTarget, setPoolable, setQueryTimeout, setResultSetConcurrency, setResultSetType, statementBegins, unwrap`

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

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

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

`cancel, clearWarnings, execute, execute, execute, execute, executeQuery, executeUpdate, executeUpdate, executeUpdate, executeUpdate, getConnection, getFetchDirection, getFetchSize, getGeneratedKeys, getMaxFieldSize, getMaxRows, getMoreResults, getMoreResults, getQueryTimeout, getResultSet, getResultSetConcurrency, getResultSetHoldability, getResultSetType, getWarnings, isClosed, isPoolable, setCursorName, setEscapeProcessing, setFetchDirection, setFetchSize, setMaxFieldSize, setMaxRows, setPoolable, setQueryTimeout`

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

`isWrapperFor, unwrap`

### Constructor Detail

#### JDBC4ServerPreparedStatement

    public JDBC4ServerPreparedStatement(MySQLConnection conn,
                                java.lang.String sql,
                                java.lang.String catalog,
                                int resultSetType,
                                int resultSetConcurrency)
                                 throws java.sql.SQLException

Throws:
  `java.sql.SQLException`

### Method Detail

#### setNCharacterStream

    public void setNCharacterStream(int parameterIndex,
                           java.io.Reader reader,
                           long length)
                             throws java.sql.SQLException

Description copied from class: `PreparedStatement`
JDBC 2.0 When a very large UNICODE value is input to a LONGVARCHAR parameter, it may be more practical to send it via a java.io.Reader. JDBC will read the data from the stream as needed, until it reaches end-of-file. The JDBC driver will do any necessary conversion from UNICODE to the database char format.

Note: This stream object can either be a standard Java stream object or your own subclass that implements the standard interface.

Specified by:
  `setNCharacterStream` in interface `java.sql.PreparedStatement`
Overrides:
  `setNCharacterStream` in class `PreparedStatement`
Parameters:
  `parameterIndex` - the first parameter is 1, the second is 2, ...
  `reader` - the java reader which contains the UNICODE data
  `length` - the number of characters in the stream
Throws:
  `java.sql.SQLException` - if a database-access error occurs.
See Also:
  `PreparedStatement.setNCharacterStream(int, java.io.Reader, long)`

#### setNClob

    public void setNClob(int parameterIndex,
                java.sql.NClob x)
                  throws java.sql.SQLException

Throws:
  `java.sql.SQLException`
See Also:
  `PreparedStatement.setNClob(int, java.sql.NClob)`

#### setNClob

    public void setNClob(int parameterIndex,
                java.io.Reader reader,
                long length)
                  throws java.sql.SQLException

JDBC 4.0 Set a NCLOB parameter.

Specified by:
  `setNClob` in interface `java.sql.PreparedStatement`
Overrides:
  `setNClob` in class `PreparedStatement`
Parameters:
  `parameterIndex` - the first parameter is 1, the second is 2, ...
  `reader` - the java reader which contains the UNICODE data
  `length` - the number of characters in the stream
Throws:
  `java.sql.SQLException` - if a database error occurs

#### setNString

    public void setNString(int parameterIndex,
                  java.lang.String x)
                    throws java.sql.SQLException

Description copied from class: `PreparedStatement`
Set a parameter to a Java String value. The driver converts this to a SQL VARCHAR or LONGVARCHAR value with introducer _utf8 (depending on the arguments size relative to the driver's limits on VARCHARs) when it sends it to the database. If charset is set as utf8, this method just call setString.

Specified by:
  `setNString` in interface `java.sql.PreparedStatement`
Overrides:
  `setNString` in class `PreparedStatement`
Parameters:
  `parameterIndex` - the first parameter is 1...
  `x` - the parameter value
Throws:
  `java.sql.SQLException` - if a database access error occurs
See Also:
  `PreparedStatement.setNString(int, java.lang.String)`

#### setRowId

    public void setRowId(int parameterIndex,
                java.sql.RowId x)
                  throws java.sql.SQLException

Throws:
  `java.sql.SQLException`

#### setSQLXML

    public void setSQLXML(int parameterIndex,
                 java.sql.SQLXML xmlObject)
                   throws java.sql.SQLException

Throws:
  `java.sql.SQLException`