alibaba / druid

阿里云计算平台DataWorks(https://help.aliyun.com/document_detail/137663.html) 团队出品,为监控而生的数据库连接池
https://github.com/alibaba/druid/wiki
Apache License 2.0
27.93k stars 8.57k forks source link

[BUG] Resolving Oracle Subpartition Definition Errors 解析Oracle子分区定义失败 #6137

Open dsomehan opened 1 week ago

dsomehan commented 1 week ago

Database Type

Oracle

Database Version

Oracle12C

Druid Version

1.2.23

JDK Version

jdk8

Error SQL

CREATE TABLE TEST6_1 ( A1 integer , A2 number(20), A3 raw(8), A4 raw(12), A5 char(8),A6 char(10),A7 date,A8 numeric(10,0),A9 double precision,A10 real, A11 int,A12 smallint ,A13 clob ,A15 timestamp ,A16 smallint ,A17 blob ,A18 varchar(10) ,A19 xmltype ) partition by range(a1) interval(20) subpartition by list(a1) subpartition template ( subpartition sub_p1 values(10,100,1000), subpartition sub_p2 values(20,30,40,50), subpartition sub_p3 values(60,70,80,90), subpartition sub_p4 values(200,300,800), subpartition sub_p5 values(default) ) ( partition p1 values less than(5) ( subpartition sub_p1_1 values(10,100,1000), subpartition sub_p1_2 values(20,30,40,50), subpartition sub_p1_3 values(200,300,800), subpartition sub_p1_4 values(default) ), partition p2 values less than(10) ( subpartition sub_p2_1 values(10,100,1000), subpartition sub_p2_2 values(20,30,40,50), subpartition sub_p2_3 values(200,300,800), subpartition sub_p2_4 values(default)
) , partition p3 values less than(15), partition p4 values less than(20) );

Testcase Code

No response

Stacktrace Info

No response

Error Info

No response

dsomehan commented 1 week ago

解析生成语法树对象后SQLSubPartitionByList再转成sql会出现错误SUBPARTITION BY List会变成SUBPARTITION BY HASH

dsomehan commented 1 week ago

pr #6138