PreparedStatement.ParseInfo
Date: 2016-03-08

com.mysql.jdbc

## Class PreparedStatement.ParseInfo

- java.lang.Object
- - com.mysql.jdbc.PreparedStatement.ParseInfo

- Enclosing class:
    PreparedStatement

      public static final class PreparedStatement.ParseInfo
      extends java.lang.Object

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `(package private) boolean` | `canRewriteAsMultiValueInsert`
    `(package private) java.lang.String` | `charEncoding`
    `(package private) char` | `firstStmtChar`
    `(package private) boolean` | `foundLoadData`
    `(package private) boolean` | `isOnDuplicateKeyUpdate`
    `(package private) long` | `lastUsed`
    `(package private) int` | `locationOfOnDuplicateKeyUpdate`
    `(package private) boolean` | `parametersInDuplicateKeyClause`
    `(package private) int` | `statementLength`
    `(package private) int` | `statementStartPos`
    `(package private) byte[][]` | `staticSql`
    `(package private) java.lang.String` | `valuesClause`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `PreparedStatement.ParseInfo(java.lang.String sql, MySQLConnection conn, java.sql.DatabaseMetaData dbmd, java.lang.String encoding, SingleByteCharsetConverter converter)` Represents the "parsed" state of a client-side prepared statement, with the statement broken up into it's static and dynamic (where parameters are bound) parts.
    `PreparedStatement.ParseInfo(java.lang.String sql, MySQLConnection conn, java.sql.DatabaseMetaData dbmd, java.lang.String encoding, SingleByteCharsetConverter converter, boolean buildRewriteInfo)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `(package private) PreparedStatement.ParseInfo` | `getParseInfoForBatch(int numBatch)` Returns a ParseInfo for a multi-value INSERT for a batch of size numBatch (without parsing!).
    `(package private) java.lang.String` | `getSqlForBatch(int numBatch)` Returns a preparable SQL string for the number of batched parameters, used by server-side prepared statements when re-writing batch INSERTs.
    `(package private) java.lang.String` | `getSqlForBatch(PreparedStatement.ParseInfo batchInfo)` Used for filling in the SQL for getPreparedSql() - for debugging

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

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

- - ### Field Detail

    - #### firstStmtChar

          char firstStmtChar

    - #### foundLoadData

          boolean foundLoadData

    - #### lastUsed

          long lastUsed

    - #### statementLength

          int statementLength

    - #### statementStartPos

          int statementStartPos

    - #### canRewriteAsMultiValueInsert

          boolean canRewriteAsMultiValueInsert

    - #### staticSql

          byte[][] staticSql

    - #### isOnDuplicateKeyUpdate

          boolean isOnDuplicateKeyUpdate

    - #### locationOfOnDuplicateKeyUpdate

          int locationOfOnDuplicateKeyUpdate

    - #### valuesClause

          java.lang.String valuesClause

    - #### parametersInDuplicateKeyClause

          boolean parametersInDuplicateKeyClause

    - #### charEncoding

          java.lang.String charEncoding

  - ### Constructor Detail

    - #### PreparedStatement.ParseInfo

          PreparedStatement.ParseInfo(java.lang.String sql,
                                     MySQLConnection conn,
                                     java.sql.DatabaseMetaData dbmd,
                                     java.lang.String encoding,
                                     SingleByteCharsetConverter converter)
                                throws java.sql.SQLException

      Represents the "parsed" state of a client-side prepared statement, with the statement broken up into it's static and dynamic (where parameters are bound) parts.
      Throws:
        `java.sql.SQLException`

    - #### PreparedStatement.ParseInfo

          public PreparedStatement.ParseInfo(java.lang.String sql,
                                     MySQLConnection conn,
                                     java.sql.DatabaseMetaData dbmd,
                                     java.lang.String encoding,
                                     SingleByteCharsetConverter converter,
                                     boolean buildRewriteInfo)
                                      throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

  - ### Method Detail

    - #### getParseInfoForBatch

          PreparedStatement.ParseInfo getParseInfoForBatch(int numBatch)

      Returns a ParseInfo for a multi-value INSERT for a batch of size numBatch (without parsing!).

    - #### getSqlForBatch

          java.lang.String getSqlForBatch(int numBatch)
                                    throws java.io.UnsupportedEncodingException

      Returns a preparable SQL string for the number of batched parameters, used by server-side prepared statements when re-writing batch INSERTs.
      Throws:
        `java.io.UnsupportedEncodingException`

    - #### getSqlForBatch

          java.lang.String getSqlForBatch(PreparedStatement.ParseInfo batchInfo)
                                    throws java.io.UnsupportedEncodingException

      Used for filling in the SQL for getPreparedSql() - for debugging
      Throws:
        `java.io.UnsupportedEncodingException`