VastbaseG100

基于openGauss内核开发的企业级关系型数据库。

Menu

Parser类

基本查询解析器基础结构。

charTerminatesIdentifier

功能描述

判断字符是否为字符终止标识符。

语法格式

public static boolean charTerminatesIdentifier(char c)

参数说明

c:字符。

返回值

如果字符为终止标识符,则为true。

digitAt

功能描述

将字符串s中位置pos的数字转换为整数或抛出异常。

语法格式

public static int digitAt(String s,             int pos)

参数说明

s:输入字符串。

pos:位置。

返回值

位置pos处数字的整数值。

isDigitAt

功能描述

判断给定的字符串s在位置pos上是否有数字。

语法格式

public static boolean isDigitAt(String s,                
int pos)

参数说明

s:输入字符串。

pos:位置。

返回值

如果给定的字符串s在位置pos上有数字,则返回true。

isDollarQuoteContChar

功能描述

检查一个字符是否作为$引号标签的第二个或后面的字符有效。

语法格式

public static boolean isDollarQuoteContChar(char c)

参数说明

c:待检查的字符。

返回值

如果$引号标签的第二个或后面的字符有效,则为true;如果不是,则为false。

isDollarQuoteStartChar

功能描述

检查作为$引号标签开头的字符是否有效。

语法格式

public static boolean isDollarQuoteStartChar(char c)

参数说明

c: 待检查的字符。

返回值

如果作为$引号标签的第一个字符有效,则为true;如果不是,则为false。

isIdentifierContChar

功能描述

检查一个字符作为标识符的第二个或后面的字符是否有效。

语法格式

public static boolean isIdentifierContChar(char c)

参数说明

c: 待检查的字符。

返回值

如果作为标识符的第二个或更高字符有效,则为true;如果不是,则为false。

isIdentifierStartChar

功能描述

检查作为标识符开头的字符是否有效。

语法格式

public static boolean isIdentifierStartChar(char c)

参数说明

参数名 参数说明
c 待检查的字符

c:待检查的字符。

返回值

如果作为标识符的第一个字符有效,则为true;如果不是,则为false。

isOperatorChar

功能描述

检查给定字符是否是后端解析器中运算符的有效字符。

语法格式

public static boolean isOperatorChar(char c)

参数说明

c:待检查的字符。

返回值

如果给定字符是后端解析器中运算符的有效字符,则为true。

isSpace

功能描述

标识后端扫描程序认为是空白的字符。

语法格式

public static boolean isSpace(char c)

参数说明

c:待检查的字符

返回值

如果字符是后端解析器中定义的空白字符,则为true。

isSpecialCharacters(char aChar)

功能描述

判断是否是特殊字符。

方法原型

public static boolean isSpecialCharacters(char achar)

参数说明

achar:判断的字符。

返回值

如果是特殊字符则为true。

生命周期

自V2.1版本启用。

modifyJdbcCall

功能描述

转换特定于JDBC的可调用语句转义 { [? =]调用[(?, [?,..])] }转换为Vastbase格式,即选择(?, [?, …]) 作为结果或从中选择*(?, [?, ...])作为结果。

语法格式

public static JdbcCallParseInfo modifyJdbcCall(String jdbcSql,                 
boolean stdStrings,                 
int serverVersion,                 
int protocolVersion)                 
throws SQLException

参数说明

jdbcSql:使用JDBC转义的sql文本。

stdStrings:如果单引号中的反斜杠应该是正则字符或转义。

serverVersion:服务器版本。

返回值

适用于给定服务器格式的SQL。

parseAsKeyword

功能描述

解析字符串来检查AS关键字的存在,不管大小写。

语法格式

public static boolean parseAsKeyword(char[] query,                   
int offset)

参数说明

参数名 参数说明
query 查询语句
offset 查询开始检查的位置

query:查询语句。

offset:查询开始检查的位置。

返回值

表示单词是否存在的布尔值。

parseBlockComment

功能描述

测试offset处的/字符是否开始一个块注释,并返回最后一个/字符的位置。

语法格式

public static int parseBlockComment(char[] query,                  
int offset)

参数说明

query:查询语句。

offset:开始检查的位置。

返回值

最后一个/字符的位置。

parseDeleteKeyword

功能描述

无论大小写,检查DELETE关键字存在的解析字符串。假设初始字符已经匹配。

语法格式

public static boolean parseDeleteKeyword(char[] query,                     
int offset)

参数说明

query: 查询语句。

offset:查询开始检查的位置。

返回值

表示单词是否存在的布尔值。

parseDollarQuotes

功能描述

测试给定偏移量处的美元字符($)是否以$开头,并返回美元字符结束时的偏移量。

语法格式

public static int parseDollarQuotes(char[] query,                  
int offset)

参数说明

query: 查询语句。

offset:查询开始检查的位置。

返回值

结束美元字符的偏移量。

parseDoubleQuotes

功能描述

查找双引号字符串的结尾,从给定的偏移量开始。

语法格式

public static int parseDoubleQuotes(char[] query,                  
int offset)

参数说明

query: 查询语句。

offset:查询开始检查的位置。

返回值

结束双引号字符串的位置。

parseInsertKeyword

功能描述

解析字符串以检查INSERT关键字是否存在,不考虑大小写。

语法格式

public static boolean parseInsertKeyword(char[] query,                     
int offset)

参数说明

query: 查询语句。

offset:查询开始检查的位置。

返回值

表示单词是否存在的布尔值。

parseJdbcSql

功能描述

将JDBC查询解析为Vastbase的原生格式。如果用分号分隔,可能会给出几个查询。

语法格式

public static List\<NativeQuery> parseJdbcSql(String query,                
boolean standardConformingStrings,                
boolean withParameters,                
boolean splitStatements,                
boolean isBatchedReWriteConfigured,                
String... returningColumnNames)                
throws SQLException

参数说明

query: 要解析的JDBC查询。

standardConformingStrings:是否允许在单引号字面值中使用反斜杠作为转义字符。

withParameters:是否用$1,$2等更换 ?,?。

splitStatements:是否使用分号分隔语句。

isBatchedReWriteConfigured:是否启用重写优化。

returningColumnNames:对于简单的插入,更新,删除添加返回给定的列名。

返回值

本机查询列表。

parseLineComment

功能描述

测试偏移量处的-字符是否开始–风格行注释,并返回第一个\r或\n字符的位置。

语法格式

public static int parseLineComment(char[] query,                  
int offset)

参数说明

query:查询语句。

offset: 查询开始检查的位置。

返回值

第一个\r或\n字符的位置。

parseLong

功能描述

当需要解析子字符串时,使用 Long.parseLong(String) 的更快版本。

语法格式

public static long parseLong(String s,               
int beginIndex,               
int endIndex)

参数说明

s: 带查询的字符串。

beginIndex:开始位置。

endIndex:结束位置。

返回值

长整型值。

parseMoveKeyword

功能描述

解析字符串以检查是否存在MOVE关键字,不考虑大小写。

语法格式

public static boolean parseMoveKeyword(char[] query,                    
int offset)

参数说明

query:查询语句。

offset:查询开始检查的位置。

返回值

表示单词是否存在的布尔值。

parseReturningKeyword

功能描述

解析字符串以检查是否存在Returning关键字,不考虑大小写。

语法格式

public static boolean parseReturningKeyword(char[] query,                      
int offset)

参数说明

query:查询语句。

offset:查询开始检查的位置。

返回值

表示单词是否存在的布尔值。

parseSelectKeyword

功能描述

解析字符串以检查是否存在Select关键字,不考虑大小写。

语法格式

public static boolean parseSelectKeyword(char[] query,                     
int offset)

参数说明

query: 查询语句。

offset:查询开始检查的位置。

返回值

表示单词是否存在的布尔值。

parseSingleQuotes

功能描述

查找从给定偏移量开始的单引号字符串的结尾。

语法格式

public static int parseSingleQuotes(char[] query,                  
int offset,                  
boolean standardConformingStrings)

参数说明

参数名 参数说明
query 查询语句的char[]
offset 查询开始检查的位置
standardConformingStrings 标准一致字符串

query:查询语句的char[]。

offset:查询开始检查的位置。

standardConformingStrings:标准一致字符串。

返回值

单引号字符串结尾的位置。

parseUpdateKeyword

功能描述

解析字符串以检查是否存在Update关键字,不考虑大小写。

语法格式

public static boolean parseUpdateKeyword(char[] query,                     
int offset)

参数说明

query: 查询语句。

offset:查询开始检查的位置。

返回值

表示单词是否存在的布尔值。

parseValuesKeyword

功能描述

解析字符串以检查是否存在Values关键字,不考虑大小写。

语法格式

public static boolean parseValuesKeyword(char[] query,                     
int offset)

参数说明

query: 查询语句。

offset:查询开始检查的位置。

返回值

表示单词是否存在的布尔值。

parseWithKeyword

功能描述

解析字符串以检查是否存在With关键字,不考虑大小写。

语法格式

public static boolean parseWithKeyword(char[] query,                    
int offset)

参数说明

query:查询语句。

offset:查询开始检查的位置。

返回值

表示单词是否存在的布尔值。

removeFirstComment

功能描述

删除第一条备注。

语法格式

public static String removeFirstComment(String str)

参数说明

str: 输入待处理字符串。

返回值

已删除第一条备注的字符串。

replaceProcessing

功能描述

筛选Java SQL转义子句的SQL字符串。

语法格式

public static String replaceProcessing(String p_sql,                    
boolean replaceProcessingEnabled,                    
boolean standardConformingStrings)                
throws SQLException

参数说明

sql:原始查询文本。

replaceProcessingEnabled:replace_pracessing enabled是否开启。

standardConformingStrings:standard_conforming_strings是否开启。

返回值

Vastbase兼容SQL。

startWithComment

功能描述

是否从备注开始。

语法格式

public static boolean startWithComment(String str)

参数说明

str: 输入待处理字符串。

返回值

若从备注开始,返回true。