Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
apache
Shardingsphere
提交
f8f805ce
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,发现更多精彩内容 >>
未验证
提交
f8f805ce
编写于
3月 11, 2020
作者:
宇泽
提交者:
GitHub
3月 11, 2020
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
#4482 Correct the DataTypeName for Oracle. (#4704)
* #4482 Correct the `DataTypeName` for oracle * delete blank line
上级
310e2ac3
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
198 addition
and
2 deletion
+198
-2
sharding-sql-test/src/main/resources/sql/supported/ddl/alter.xml
...g-sql-test/src/main/resources/sql/supported/ddl/alter.xml
+3
-0
shardingsphere-sql-parser/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/BaseRule.g4
...-parser-oracle/src/main/antlr4/imports/oracle/BaseRule.g4
+6
-2
shardingsphere-sql-parser/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/Keyword.g4
...l-parser-oracle/src/main/antlr4/imports/oracle/Keyword.g4
+16
-0
shardingsphere-sql-parser/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/OracleKeyword.g4
...er-oracle/src/main/antlr4/imports/oracle/OracleKeyword.g4
+116
-0
shardingsphere-sql-parser/shardingsphere-sql-parser-test/src/test/resources/sql/ddl/alter-table.xml
...ql-parser-test/src/test/resources/sql/ddl/alter-table.xml
+57
-0
未找到文件。
sharding-sql-test/src/main/resources/sql/supported/ddl/alter.xml
浏览文件 @
f8f805ce
...
@@ -26,10 +26,13 @@
...
@@ -26,10 +26,13 @@
<sql-case
id=
"alter_table_add_column"
value=
"ALTER TABLE t_order ADD column4 VARCHAR(10)"
/>
<sql-case
id=
"alter_table_add_column"
value=
"ALTER TABLE t_order ADD column4 VARCHAR(10)"
/>
<sql-case
id=
"alter_table_add_columns"
value=
"ALTER TABLE t_order ADD column4 VARCHAR(10), ADD column5 VARCHAR(10), ADD column6 VARCHAR(10)"
db-types=
"MySQL,PostgreSQL"
/>
<sql-case
id=
"alter_table_add_columns"
value=
"ALTER TABLE t_order ADD column4 VARCHAR(10), ADD column5 VARCHAR(10), ADD column6 VARCHAR(10)"
db-types=
"MySQL,PostgreSQL"
/>
<sql-case
id=
"alter_table_add_columns_integer_type_mysql"
value=
"ALTER TABLE t_order ADD column4 INTEGER, ADD column5 TINYINT, ADD column6 MEDIUMINT"
db-types=
"MySQL"
/>
<sql-case
id=
"alter_table_add_columns_integer_type_mysql"
value=
"ALTER TABLE t_order ADD column4 INTEGER, ADD column5 TINYINT, ADD column6 MEDIUMINT"
db-types=
"MySQL"
/>
<sql-case
id=
"alter_table_add_columns_integer_type_oracle"
value=
"ALTER TABLE t_order ADD (column4 INTEGER, column5 INT, column6 SMALLINT)"
db-types=
"Oracle"
/>
<sql-case
id=
"alter_table_add_columns_fixed_point_type"
value=
"ALTER TABLE t_order ADD column4 decimal(10,2), ADD column5 NUMERIC"
db-types=
"MySQL,PostgreSQL"
/>
<sql-case
id=
"alter_table_add_columns_fixed_point_type"
value=
"ALTER TABLE t_order ADD column4 decimal(10,2), ADD column5 NUMERIC"
db-types=
"MySQL,PostgreSQL"
/>
<sql-case
id=
"alter_table_add_columns_float_point_type_mysql"
value=
"ALTER TABLE t_order ADD column4 FLOAT(10,2), ADD column5 DOUBLE(10,2)"
db-types=
"MySQL"
/>
<sql-case
id=
"alter_table_add_columns_float_point_type_mysql"
value=
"ALTER TABLE t_order ADD column4 FLOAT(10,2), ADD column5 DOUBLE(10,2)"
db-types=
"MySQL"
/>
<sql-case
id=
"alter_table_add_columns_float_point_type_oracle"
value=
"ALTER TABLE t_order ADD (column4 FLOAT(10), column5 double precision)"
db-types=
"Oracle"
/>
<sql-case
id=
"alter_table_add_columns_bit_type"
value=
"ALTER TABLE t_order ADD column4 bit"
db-types=
"MySQL,PostgreSQL,SQLServer"
/>
<sql-case
id=
"alter_table_add_columns_bit_type"
value=
"ALTER TABLE t_order ADD column4 bit"
db-types=
"MySQL,PostgreSQL,SQLServer"
/>
<sql-case
id=
"alter_table_add_columns_date_type_mysql"
value=
"ALTER TABLE t_order ADD column4 YEAR"
db-types=
"MySQL"
/>
<sql-case
id=
"alter_table_add_columns_date_type_mysql"
value=
"ALTER TABLE t_order ADD column4 YEAR"
db-types=
"MySQL"
/>
<sql-case
id=
"alter_table_add_columns_date_type_oracle"
value=
"ALTER TABLE t_order ADD (column4 DATE, column5 DATETIME, column6 TIMESTAMP, column7 TIMESTAMP WITH TIME ZONE)"
db-types=
"Oracle"
/>
<sql-case
id=
"alter_table_add_columns_date_type"
value=
"ALTER TABLE t_order ADD column4 DATE, ADD column5 DATETIME, ADD column6 TIMESTAMP, ADD column7 TIME"
db-types=
"MySQL,PostgreSQL"
/>
<sql-case
id=
"alter_table_add_columns_date_type"
value=
"ALTER TABLE t_order ADD column4 DATE, ADD column5 DATETIME, ADD column6 TIMESTAMP, ADD column7 TIME"
db-types=
"MySQL,PostgreSQL"
/>
<sql-case
id=
"alter_table_add_columns_string_type"
value=
"ALTER TABLE t_order ADD column4 CHAR, ADD column5 VARCHAR, ADD column6 TEXT"
db-types=
"MySQL,PostgreSQL,SQLServer"
/>
<sql-case
id=
"alter_table_add_columns_string_type"
value=
"ALTER TABLE t_order ADD column4 CHAR, ADD column5 VARCHAR, ADD column6 TEXT"
db-types=
"MySQL,PostgreSQL,SQLServer"
/>
<sql-case
id=
"alter_table_add_columns_string_type_mysql"
value=
"ALTER TABLE t_order ADD column4 BINARY, ADD column5 VARBINARY, ADD column6 TINYBLOB, ADD column7 TINYTEXT, ADD column8 BLOB, ADD column9 MEDIUMBLOB, ADD column10 MEDIUMTEXT, ADD column11 LONGBLOB, ADD column12 LONGTEXT, ADD column13 ENUM, ADD column14 SET"
db-types=
"MySQL"
/>
<sql-case
id=
"alter_table_add_columns_string_type_mysql"
value=
"ALTER TABLE t_order ADD column4 BINARY, ADD column5 VARBINARY, ADD column6 TINYBLOB, ADD column7 TINYTEXT, ADD column8 BLOB, ADD column9 MEDIUMBLOB, ADD column10 MEDIUMTEXT, ADD column11 LONGBLOB, ADD column12 LONGTEXT, ADD column13 ENUM, ADD column14 SET"
db-types=
"MySQL"
/>
...
...
shardingsphere-sql-parser/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/BaseRule.g4
浏览文件 @
f8f805ce
...
@@ -312,11 +312,15 @@ dataType
...
@@ -312,11 +312,15 @@ dataType
;
;
specialDatatype
specialDatatype
: dataTypeName (LP_ NUMBER_
IDENTIFIER_
RP_) | NATIONAL dataTypeName VARYING? LP_ NUMBER_ RP_ | dataTypeName LP_? columnName RP_?
: dataTypeName (LP_ NUMBER_
CHAR
RP_) | NATIONAL dataTypeName VARYING? LP_ NUMBER_ RP_ | dataTypeName LP_? columnName RP_?
;
;
dataTypeName
dataTypeName
: IDENTIFIER_ IDENTIFIER_ | IDENTIFIER_
: CHAR | NCHAR | RAW | VARCHAR | NVARCHAR2 | LONG | LONG RAW | BLOB | CLOB | NCLOB | BINARY_FLOAT | BINARY_DOUBLE
| BOOLEAN | PLS_INTEGER | BINARY_INTEGER | INTEGER | NUMBER | NATURAL | NATURALN | POSITIVE | POSITIVEN | SIGNTYPE
| SIMPLE_INTEGER | BFILE | MLSLABEL | UROWID | DATE | TIMESTAMP | TIMESTAMP_WITH_TIME_ZONE | INTERVAL_YEAR_TO_MONTH
| INTERVAL_DAY_TO_SECOND | TIMESTAMP_WITH_LOCAL_TIME_ZONE | JSON | FLOAT | REAL | DOUBLE_PRECISION | INT | SMALLINT
| DECIMAL | NUMERIC | DEC | IDENTIFIER_
;
;
datetimeTypeSuffix
datetimeTypeSuffix
...
...
shardingsphere-sql-parser/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/Keyword.g4
浏览文件 @
f8f805ce
...
@@ -534,3 +534,19 @@ DECIMAL
...
@@ -534,3 +534,19 @@ DECIMAL
TYPE
TYPE
: T Y P E
: T Y P E
;
;
INT
: I N T
;
SMALLINT
: S M A L L I N T
;
NUMERIC
: N U M E R I C
;
FLOAT
: F L O A T
;
shardingsphere-sql-parser/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/OracleKeyword.g4
浏览文件 @
f8f805ce
...
@@ -674,3 +674,119 @@ DBA_RECYCLEBIN
...
@@ -674,3 +674,119 @@ DBA_RECYCLEBIN
FIRST
FIRST
: F I R S T
: F I R S T
;
;
NCHAR
: N C H A R
;
RAW
: R A W
;
VARCHAR
: V A R C H A R [2]?
;
NVARCHAR2
: N V A R C H A R [2]
;
LONG
: L O N G
;
LONG_RAW
: L O N G [ ]+ R A W
;
BLOB
: B L O B
;
CLOB
: C L O B
;
NCLOB
: N C L O B
;
BINARY_FLOAT
: B I N A R Y UL_ F L O A T
;
BINARY_DOUBLE
: B I N A R Y UL_ D O U B L E
;
PLS_INTEGER
: P L S UL_ I N T E G E R
;
BINARY_INTEGER
: B I N A R Y UL_ I N T E G E R
;
NUMBER
: N U M B E R
;
NATURALN
: N A T U R A L N
;
POSITIVE
: P O S I T I V E
;
POSITIVEN
: P O S I T I V E N
;
SIGNTYPE
: S I G N T Y P E
;
SIMPLE_INTEGER
: S I M P L E UL_ I N T E G E R
;
BFILE
: B F I L E
;
MLSLABEL
: M L S L A B E L
;
UROWID
: U R O W I D
;
TIMESTAMP_WITH_TIME_ZONE
: T I M E S T A M P [ ]+ W I T H [ ]+ T I M E [ ]+ Z O N E
;
INTERVAL_YEAR_TO_MONTH
: I N T E R V A L [ ]+ Y E A R [ ]+ T O [ ]+ M O N T H
;
INTERVAL_DAY_TO_SECOND
: I N T E R V A L [ ]+ D A Y [ ]+ T O [ ]+ S E C O N D
;
TIMESTAMP_WITH_LOCAL_TIME_ZONE
: T I M E S T A M P [ ]+ W I T H [ ]+ L O C A L [ ]+ T I M E [ ]+ Z O N E
;
JSON
: J S O N
;
DOUBLE_PRECISION
: D O U B L E [ ]+ P R E C I S I O N
;
DEC
: D E C
;
shardingsphere-sql-parser/shardingsphere-sql-parser-test/src/test/resources/sql/ddl/alter-table.xml
浏览文件 @
f8f805ce
...
@@ -94,6 +94,25 @@
...
@@ -94,6 +94,25 @@
</add-column>
</add-column>
</alter-table>
</alter-table>
<alter-table
sql-case-id=
"alter_table_add_columns_integer_type_oracle"
>
<table
name=
"t_order"
start-index=
"12"
stop-index=
"18"
/>
<add-column>
<column-definition
type=
"INTEGER"
>
<column
name=
"column4"
/>
</column-definition>
</add-column>
<add-column>
<column-definition
type=
"INT"
>
<column
name=
"column5"
/>
</column-definition>
</add-column>
<add-column>
<column-definition
type=
"SMALLINT"
>
<column
name=
"column6"
/>
</column-definition>
</add-column>
</alter-table>
<alter-table
sql-case-id=
"alter_table_add_columns_integer_type"
>
<alter-table
sql-case-id=
"alter_table_add_columns_integer_type"
>
<table
name=
"t_order"
start-index=
"12"
stop-index=
"18"
/>
<table
name=
"t_order"
start-index=
"12"
stop-index=
"18"
/>
<add-column>
<add-column>
...
@@ -141,6 +160,20 @@
...
@@ -141,6 +160,20 @@
</add-column>
</add-column>
</alter-table>
</alter-table>
<alter-table
sql-case-id=
"alter_table_add_columns_float_point_type_oracle"
>
<table
name=
"t_order"
start-index=
"12"
stop-index=
"18"
/>
<add-column>
<column-definition
type=
"FLOAT"
>
<column
name=
"column4"
/>
</column-definition>
</add-column>
<add-column>
<column-definition
type=
"double precision"
>
<column
name=
"column5"
/>
</column-definition>
</add-column>
</alter-table>
<alter-table
sql-case-id=
"alter_table_add_columns_float_point_type_postgresql"
>
<alter-table
sql-case-id=
"alter_table_add_columns_float_point_type_postgresql"
>
<table
name=
"t_order"
start-index=
"12"
stop-index=
"18"
/>
<table
name=
"t_order"
start-index=
"12"
stop-index=
"18"
/>
<add-column>
<add-column>
...
@@ -313,6 +346,30 @@
...
@@ -313,6 +346,30 @@
</add-column>
</add-column>
</alter-table>
</alter-table>
<alter-table
sql-case-id=
"alter_table_add_columns_date_type_oracle"
>
<table
name=
"t_order"
start-index=
"12"
stop-index=
"18"
/>
<add-column>
<column-definition
type=
"DATE"
>
<column
name=
"column4"
/>
</column-definition>
</add-column>
<add-column>
<column-definition
type=
"DATETIME"
>
<column
name=
"column5"
/>
</column-definition>
</add-column>
<add-column>
<column-definition
type=
"TIMESTAMP"
>
<column
name=
"column6"
/>
</column-definition>
</add-column>
<add-column>
<column-definition
type=
"TIMESTAMP WITH TIME ZONE"
>
<column
name=
"column7"
/>
</column-definition>
</add-column>
</alter-table>
<alter-table
sql-case-id=
"alter_table_add_column_with_first"
>
<alter-table
sql-case-id=
"alter_table_add_column_with_first"
>
<table
name=
"t_order"
start-index=
"12"
stop-index=
"18"
/>
<table
name=
"t_order"
start-index=
"12"
stop-index=
"18"
/>
<add-column>
<add-column>
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录