Class ClientParser

java.lang.Object
org.mariadb.jdbc.util.ClientParser
All Implemented Interfaces:
PrepareResult

public final class ClientParser extends Object implements PrepareResult
  • Field Details

    • sql

      private final String sql
    • query

      private final byte[] query
    • paramPositions

      private final List<Integer> paramPositions
    • paramCount

      private final int paramCount
    • isInsert

      private final boolean isInsert
    • isInsertDuplicate

      private final boolean isInsertDuplicate
    • isMultiQuery

      private final boolean isMultiQuery
  • Constructor Details

    • ClientParser

      private ClientParser(String sql, byte[] query, List<Integer> paramPositions, boolean isInsert, boolean isInsertDuplicate, boolean isMultiQuery)
  • Method Details

    • parameterParts

      public static ClientParser parameterParts(String queryString, boolean noBackslashEscapes)
      Separate query in a String list and set flag isQueryMultipleRewritable. The resulting string list is separed by ? that are not in comments. isQueryMultipleRewritable flag is set if query can be rewrite in one query (all case but if using "-- comment"). example for query : "INSERT INTO tableName(id, name) VALUES (?, ?)" result list will be : {"INSERT INTO tableName(id, name) VALUES (", ", ", ")"}
      Parameters:
      queryString - query
      noBackslashEscapes - escape mode
      Returns:
      ClientPrepareResult
    • getSql

      public String getSql()
      Specified by:
      getSql in interface PrepareResult
    • getQuery

      public byte[] getQuery()
    • getParamPositions

      public List<Integer> getParamPositions()
    • getParamCount

      public int getParamCount()
      Specified by:
      getParamCount in interface PrepareResult
    • isInsert

      public boolean isInsert()
    • isInsertDuplicate

      public boolean isInsertDuplicate()
    • isMultiQuery

      public boolean isMultiQuery()