Class ClientParser

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

public final class ClientParser extends Object implements PrepareResult
  • Method Details

    • parameterParts

      public static ClientParser parameterParts(String queryString, boolean noBackslashEscapes)
      For a given queryString, get
      • query - a byte array containing the UTF8 representation of that string
      • paramPositions - the byte positions of any '?' positional parameters in query
      and set the following flags:
      • isInsert - queryString contains 'INSERT' outside of quotes, without one of the characters '();>invalid input: '<'=-+,' immediately preceding or following
      • isInsertDuplicate - isInsert invalid input: '&'invalid input: '&' queryString contains 'DUPLICATE' outside of quotes, without one of the characters '();>invalid input: '<'=-+,' immediately preceding or following
      • isMulti - queryString contains text after the last ';' outside of quotes
      Parameters:
      queryString - query
      noBackslashEscapes - escape mode
      Returns:
      ClientParser
    • rewritableParts

      public static ClientParser rewritableParts(String queryString, boolean noBackslashEscapes)
      For a given queryString, get the fields and flags from parameterParts(String, boolean), and
      • valuesBracketPositions - a two-element list containing the positions of the opening and closing parenthesis of the VALUES block
      Parameters:
      queryString - query
      noBackslashEscapes - escape mode
      Returns:
      ClientParser
    • getSql

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

      public byte[] getQuery()
    • getParamPositions

      public List<Integer> getParamPositions()
    • getValuesBracketPositions

      public List<Integer> getValuesBracketPositions()
    • getParamCount

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

      public boolean isInsert()
    • isInsertDuplicate

      public boolean isInsertDuplicate()
    • isMultiQuery

      public boolean isMultiQuery()