Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
apache
Shardingsphere
提交
db9423d4
Shardingsphere
项目概览
apache
/
Shardingsphere
通知
56
Star
3
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
Shardingsphere
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
db9423d4
编写于
5月 12, 2020
作者:
J
JingShang Lu
提交者:
GitHub
5月 12, 2020
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix g4 of mysql dal (#5547)
上级
5fdb81a3
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
51 addition
and
23 deletion
+51
-23
shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-mysql/src/main/antlr4/imports/mysql/BaseRule.g4
...ql-parser-mysql/src/main/antlr4/imports/mysql/BaseRule.g4
+8
-0
shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-mysql/src/main/antlr4/imports/mysql/DALStatement.g4
...arser-mysql/src/main/antlr4/imports/mysql/DALStatement.g4
+40
-20
shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-mysql/src/main/antlr4/org/apache/shardingsphere/sql/parser/autogen/MySQLStatement.g4
...pache/shardingsphere/sql/parser/autogen/MySQLStatement.g4
+1
-1
shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-mysql/src/main/java/org/apache/shardingsphere/sql/parser/mysql/visitor/impl/MySQLDALVisitor.java
...sphere/sql/parser/mysql/visitor/impl/MySQLDALVisitor.java
+2
-2
未找到文件。
shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-mysql/src/main/antlr4/imports/mysql/BaseRule.g4
浏览文件 @
db9423d4
...
...
@@ -587,3 +587,11 @@ notExistClause_
existClause_
: (IF EXISTS)?
;
pattern
: STRING_
;
connectionId_
: NUMBER_
;
shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-mysql/src/main/antlr4/imports/mysql/DALStatement.g4
浏览文件 @
db9423d4
...
...
@@ -17,26 +17,33 @@
grammar DALStatement;
import Symbol, Keyword, MySQLKeyword, Literals, BaseRule;
import Symbol, Keyword, MySQLKeyword, Literals, BaseRule
, DMLStatement
;
use
: USE schemaName
;
desc
: (DESC | DESCRIBE) tableName
help
: HELP STRING_
;
explain
: (DESC | DESCRIBE | EXPLAIN)
(tableName (columnName | pattern)?
| explainType? (explainableStatement | FOR CONNECTION connectionId_)
| ANALYZE select)
;
showDatabases
: SHOW (DATABASES | SCHEMAS)
(showLike | showWhereClause_)
?
: SHOW (DATABASES | SCHEMAS)
showFilter
?
;
showTables
: SHOW EXTENDED? FULL? TABLES fromSchema?
(showLike | showWhereClause_)
?
: SHOW EXTENDED? FULL? TABLES fromSchema?
showFilter
?
;
showTableStatus
: SHOW TABLE STATUS fromSchema?
(showLike | showWhereClause_)
?
: SHOW TABLE STATUS fromSchema?
showFilter
?
;
showColumns
...
...
@@ -108,7 +115,7 @@ showCollation
;
showCreateDatabase
: SHOW CREATE (DATABASE | SCHEMA)
(IF NOT EXISTS)?
schemaName
: SHOW CREATE (DATABASE | SCHEMA)
notExistClause_
schemaName
;
showCreateEvent
...
...
@@ -144,7 +151,7 @@ showEngines
;
showErrors
: SHOW (
(ERRORS (LIMIT (NUMBER_ COMMA_)? NUMBER_)?) | (COUNT LP_ ASTERISK_ RP_ ERRORS))
: SHOW (
COUNT LP_ ASTERISK_ RP_)? ERRORS (LIMIT (NUMBER_ COMMA_)? NUMBER_)?
;
showEvents
...
...
@@ -160,7 +167,7 @@ showFunctionStatus
;
showGrant
: SHOW GRANTS (
FOR (userName | roleName) (USING roleName (COMMA_ roleName)+)?)
: SHOW GRANTS (
FOR userOrRole (USING roleName (COMMA_ roleName)+)?)?
;
showMasterStatus
...
...
@@ -192,7 +199,7 @@ showProcesslist
;
showProfile
: SHOW PROFILE ( showProfileType (COMMA_ showProfileType)*)? (FOR QUERY NUMBER_)? (LIMIT NUMBER_ (OFFSET NUMBER_))?
: SHOW PROFILE ( showProfileType (COMMA_ showProfileType)*)? (FOR QUERY NUMBER_)? (LIMIT NUMBER_ (OFFSET NUMBER_)
?
)?
;
showProfiles
...
...
@@ -200,7 +207,7 @@ showProfiles
;
showRelaylogEvent
: SHOW RELAYLOG EVENTS (IN logName)? (FROM NUMBER_)? (LIMIT (NUMBER_ COMMA_)? NUMBER_) FOR CHANNEL channelName
: SHOW RELAYLOG EVENTS (IN logName)? (FROM NUMBER_)? (LIMIT (NUMBER_ COMMA_)? NUMBER_)
?
FOR CHANNEL channelName
;
showSlavehost
...
...
@@ -208,11 +215,11 @@ showSlavehost
;
showSlaveStatus
: SHOW SLAVE STATUS (FOR CHANNEL channelName)
: SHOW SLAVE STATUS (FOR CHANNEL channelName)
?
;
showStatus
: SHOW (GLOBAL | SESSION) STATUS showFilter?
: SHOW (GLOBAL | SESSION)
?
STATUS showFilter?
;
showTrriggers
...
...
@@ -220,11 +227,11 @@ showTrriggers
;
showVariables
: SHOW (GLOBAL | SESSION)? VARIABLES showFilter
: SHOW (GLOBAL | SESSION)? VARIABLES showFilter
?
;
showWarnings
: SHOW (
(WARNINGS (LIMIT (NUMBER_ COMMA_)? NUMBER_)?) | (COUNT LP_ ASTERISK_ RP_ WARNINGS))
: SHOW (
COUNT LP_ ASTERISK_ RP_)? WARNINGS (LIMIT (NUMBER_ COMMA_)? NUMBER_)?
;
setCharacter
...
...
@@ -241,11 +248,11 @@ clone
cloneAction_
: LOCAL DATA DIRECTORY EQ_? cloneDir SEMI_
| INSTANCE FROM cloneInstance IDENTIFIED BY STRING_ (DATA DIRECTORY EQ_ cloneDir)? (REQUIRE NO? SSL)?
| INSTANCE FROM cloneInstance IDENTIFIED BY STRING_ (DATA DIRECTORY EQ_
?
cloneDir)? (REQUIRE NO? SSL)?
;
createUdf
: CREATE AGGREGATE
FUNCTION functionName RETURNS (
STRING | INTEGER | REAL | DECIMAL) SONAME shardLibraryName
: CREATE AGGREGATE
? FUNCTION functionName RETURNS (
STRING | INTEGER | REAL | DECIMAL) SONAME shardLibraryName
;
installComponent
...
...
@@ -320,7 +327,7 @@ cacheIndex
;
tableIndexList
: tableName (PARTITION LP_ partitionList RP_)? ((INDEX | KEY) LP_ indexName (COMMA_ indexName)* RP_)?
: tableName (PARTITION LP_ partitionList RP_)? ((INDEX | KEY) LP_ indexName (COMMA_ indexName)* RP_)?
(IGNORE LEAVES)?
;
partitionList
...
...
@@ -328,7 +335,7 @@ partitionList
;
flush
: FLUSH (NO_WRITE_TO_BINLOG | LOCAL)? (flushOption_ (COMMA_ flushOption_)
* | tablesOption_)
: FLUSH (NO_WRITE_TO_BINLOG | LOCAL)? (flushOption_ (COMMA_ flushOption_)* | tablesOption_)
;
flushOption_
...
...
@@ -358,7 +365,7 @@ resetOption_
;
resetPersist
: RESET PERSIST (
(IF EXISTS)?
IDENTIFIER_)
: RESET PERSIST (
existClause_
IDENTIFIER_)
;
restart
...
...
@@ -368,3 +375,16 @@ restart
shutdown
: SHUTDOWN
;
explainType
: FORMAT EQ_ formatName
;
explainableStatement
: select | tableStatement | delete | insert | replace | update
;
formatName
: 'TRADITIONAL' | JSON | 'TREE'
;
shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-mysql/src/main/antlr4/org/apache/shardingsphere/sql/parser/autogen/MySQLStatement.g4
浏览文件 @
db9423d4
...
...
@@ -52,7 +52,7 @@ execute
| setRole
| setPassword
| use
|
desc
|
explain
| showDatabases
| showTables
| showTableStatus
...
...
shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-mysql/src/main/java/org/apache/shardingsphere/sql/parser/mysql/visitor/impl/MySQLDALVisitor.java
浏览文件 @
db9423d4
...
...
@@ -23,7 +23,7 @@ import org.apache.shardingsphere.sql.parser.autogen.MySQLStatementParser.Variabl
import
org.apache.shardingsphere.sql.parser.autogen.MySQLStatementParser.AnalyzeTableContext
;
import
org.apache.shardingsphere.sql.parser.autogen.MySQLStatementParser.CacheIndexContext
;
import
org.apache.shardingsphere.sql.parser.autogen.MySQLStatementParser.ChecksumTableContext
;
import
org.apache.shardingsphere.sql.parser.autogen.MySQLStatementParser.
Desc
Context
;
import
org.apache.shardingsphere.sql.parser.autogen.MySQLStatementParser.
Explain
Context
;
import
org.apache.shardingsphere.sql.parser.autogen.MySQLStatementParser.FlushContext
;
import
org.apache.shardingsphere.sql.parser.autogen.MySQLStatementParser.FromSchemaContext
;
import
org.apache.shardingsphere.sql.parser.autogen.MySQLStatementParser.FromTableContext
;
...
...
@@ -212,7 +212,7 @@ public final class MySQLDALVisitor extends MySQLVisitor implements DALVisitor {
}
@Override
public
ASTNode
visit
Desc
(
final
Desc
Context
ctx
)
{
public
ASTNode
visit
Explain
(
final
Explain
Context
ctx
)
{
DescribeStatement
result
=
new
DescribeStatement
();
result
.
setTable
((
SimpleTableSegment
)
visit
(
ctx
.
tableName
()));
return
result
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录