Oracle 19c中IntelliJ IDE使用引用分区(Partition by Reference)报错问题求助
Oracle 19c中IntelliJ IDE使用引用分区(Partition by Reference)报错问题求助
大家好,我最近在Oracle 19c环境下尝试使用**引用分区(Partition by Reference)**创建关联表时遇到了一个奇怪的问题,想请各位帮忙分析下原因!
情况是这样的:
- 我在IntelliJ IDE里编写创建表的SQL,当使用
PARTITION BY REFERENCE语法时,IDE一直报错:" HASH, LIST, RANGE, SQL_REFERENCE or SYSTEM expected, got 'REFERENCE' "
- 但同样的SQL语句,放到Oracle SQL Developer里却能正常执行,没有任何问题。
我已经尝试了以下几种方法,都没能解决这个报错:
- 换成
PARTITION BY LIST的语法,IDE完全正常识别,执行也没问题; - 把父表和子表的主键、外键都改成表级约束(而不是列级约束)来定义,还是触发同样的报错;
- 直接照搬了标准的引用分区示例代码来测试,结果还是不行,示例代码如下:
CREATE TABLE orders ( order_id NUMBER PRIMARY KEY, order_date DATE NOT NULL, customer_id NUMBER NOT NULL, shipper_id NUMBER) PARTITION BY RANGE (order_date) ( PARTITION y1 VALUES LESS THAN (TO_DATE('01-JAN-2006', 'DD-MON-YYYY')), PARTITION y2 VALUES LESS THAN (TO_DATE('01-JAN-2007', 'DD-MON-YYYY')), PARTITION y3 VALUES LESS THAN (TO_DATE('01-JAN-2008', 'DD-MON-YYYY'))); CREATE TABLE order_items ( order_id NUMBER NOT NULL, product_id NUMBER NOT NULL, price NUMBER, quantity NUMBER, CONSTRAINT order_items_fk FOREIGN KEY (order_id) REFERENCES orders) PARTITION BY REFERENCE (order_items_fk);
实在想不通哪里出问题了,会不会是某个我没注意到的低级错误?求各位大佬指点迷津!
备注:内容来源于stack exchange,提问作者an edith




