Versions in this module Expand all Collapse all v1 v1.0.0 Sep 22, 2024 Changes in this version + var ErrInvalidYearColumnLength = terror.ClassParser.NewStd(mysql.ErrInvalidYearColumnLength) + var ErrParse = terror.ClassParser.NewStd(mysql.ErrParse) + var ErrSyntax = terror.ClassParser.NewStd(mysql.ErrSyntax) + var ErrTooBigDisplayWidth = terror.ClassParser.NewStd(mysql.ErrTooBigDisplaywidth) + var ErrTooBigPrecision = terror.ClassParser.NewStd(mysql.ErrTooBigPrecision) + var ErrUnknownAlterAlgorithm = terror.ClassParser.NewStd(mysql.ErrUnknownAlterAlgorithm) + var ErrUnknownAlterLock = terror.ClassParser.NewStd(mysql.ErrUnknownAlterLock) + var ErrUnknownCharacterSet = terror.ClassParser.NewStd(mysql.ErrUnknownCharacterSet) + var ErrWarnDeprecatedSyntax = terror.ClassParser.NewStd(mysql.ErrWarnDeprecatedSyntax) + var ErrWarnDeprecatedSyntaxNoReplacement = terror.ClassParser.NewStd(mysql.ErrWarnDeprecatedSyntaxNoReplacement) + var ErrWarnMemoryQuotaOverflow = terror.ClassParser.NewStd(mysql.ErrWarnMemoryQuotaOverflow) + var ErrWarnOptimizerHintInvalidInteger = terror.ClassParser.NewStd(mysql.ErrWarnOptimizerHintInvalidInteger) + var ErrWarnOptimizerHintInvalidToken = terror.ClassParser.NewStd(mysql.ErrWarnOptimizerHintInvalidToken) + var ErrWarnOptimizerHintParseError = terror.ClassParser.NewStd(mysql.ErrWarnOptimizerHintParseError) + var ErrWarnOptimizerHintUnsupportedHint = terror.ClassParser.NewStd(mysql.ErrWarnOptimizerHintUnsupportedHint) + var ErrWarnOptimizerHintWrongPos = terror.ClassParser.NewStd(mysql.ErrWarnOptimizerHintWrongPos) + var ErrWrongArguments = terror.ClassParser.NewStd(mysql.ErrWrongArguments) + var ErrWrongDBName = terror.ClassParser.NewStd(mysql.ErrWrongDBName) + var ErrWrongFieldTerminators = terror.ClassParser.NewStd(mysql.ErrWrongFieldTerminators) + var ErrWrongUsage = terror.ClassParser.NewStd(mysql.ErrWrongUsage) + var ErrWrongValue = terror.ClassParser.NewStd(mysql.ErrWrongValue) + var Keywords = []KeywordsType + var SpecFieldPattern = regexp.MustCompile(`(\/\*!(M?[0-9]{5,6})?|\*\/)`) + func Normalize(sql string, redact string) (result string) + func NormalizeForBinding(sql string, forPlanReplayerReload bool) (result string) + func NormalizeKeepHint(sql string) (result string) + func ParseErrorWith(errstr string, lineno int) error + func ParseHint(input string, sqlMode mysql.SQLMode, initPos Pos) ([]*ast.TableOptimizerHint, []error) + func TrimComment(txt string) string + type CharsetClient string + func (c CharsetClient) ApplyOn(p *Parser) error + type CharsetConnection string + func (c CharsetConnection) ApplyOn(p *Parser) error + type CollationConnection string + func (c CollationConnection) ApplyOn(p *Parser) error + type Digest struct + func DigestHash(sql string) (digest *Digest) + func DigestNormalized(normalized string) (digest *Digest) + func NewDigest(b []byte) *Digest + func NormalizeDigest(sql string) (normalized string, digest *Digest) + func NormalizeDigestForBinding(sql string) (normalized string, digest *Digest) + func (d *Digest) Bytes() []byte + func (d *Digest) String() string + type KeywordsType struct + Reserved bool + Section string + Word string + type ParseParam interface + ApplyOn func(*Parser) error + type Parser struct + func New() *Parser + func (parser *Parser) EnableWindowFunc(val bool) + func (parser *Parser) Parse(sql, charset, collation string) (stmt []ast.StmtNode, warns []error, err error) + func (parser *Parser) ParseOneStmt(sql, charset, collation string) (ast.StmtNode, error) + func (parser *Parser) ParseSQL(sql string, params ...ParseParam) (stmt []ast.StmtNode, warns []error, err error) + func (parser *Parser) SetParserConfig(config ParserConfig) + func (parser *Parser) SetSQLMode(mode mysql.SQLMode) + func (parser *Parser) SetStrictDoubleTypeCheck(val bool) + type ParserConfig struct + EnableStrictDoubleTypeCheck bool + EnableWindowFunction bool + SkipPositionRecording bool + type Pos struct + Col int + Line int + Offset int + type Scanner struct + func NewScanner(s string) *Scanner + func (s *Scanner) AppendError(err error) + func (s *Scanner) AppendWarn(err error) + func (s *Scanner) EnableWindowFunc(val bool) + func (s *Scanner) Errorf(format string, a ...interface{}) (err error) + func (s *Scanner) Errors() (warns []error, errs []error) + func (s *Scanner) GetSQLMode() mysql.SQLMode + func (s *Scanner) InheritScanner(sql string) *Scanner + func (s *Scanner) Lex(v *yySymType) int + func (s *Scanner) LexLiteral() interface{} + func (s *Scanner) SetSQLMode(mode mysql.SQLMode)