在最近升级到 Oracle 12cR1 后,Idea 的数据库编辑器语法突出显示对于我的 Oracle 连接来说已经过时了。
使用在 SQLPlus(12.1.0.2.0) 和 SQLcl(4.2.0) 中正常工作的 12c 语法的查询在我的 Idea 编辑器中突出显示为不正确的语法。从编辑器执行时,它们也无法运行。
我想更新 intellij,但我还没有找到升级 oracle 方言的地方,而且我的 jdbc 驱动程序似乎是最新的。我希望在两个方面得到建议——在哪里升级 intellj 以成功执行 12c 语法 SQL,以及如何让 Idea 的 Oracle-Dialect 具有 12c 兼容的语法突出显示。涵盖这两个方面的一个示例是子查询分解子句函数声明。这些构造无法在编辑器中执行,并带有 ORA-06553。
我在 Ubuntu-16.04 LTS 上使用 Idea (v 2016.3.4)
我正在使用 Database-Plugin:数据库工具和 SQL 插件 (v 1.0)
我正在使用提供的驱动程序:.IntelliJIdea2016.3/config/jdbc-驱动程序/
驱动程序版本是 xdb6-12.1.0.2.jar 和 ojdbc6-12.1.0.2.jar
我目前没有在我的驱动程序配置中使用任何其他文件
如果还不支持,我可以接受。如果目前可能的话,我只想升级。
谢谢
这是一个检查字符串是否在 (dvorak) 主行上用于键入的示例。该语句在 SQLPlus 和 SQLcl 中工作正常,但在 Idea 中被标记为无效并且无法执行 (ORA-06553)。这当然可以只用 SQL 更简洁地完成,但希望能说明这个问题。
WITH
FUNCTION IS_IT_DVORAK_HOME_ROW(P_CHAR_STRING IN VARCHAR2 )
RETURN NUMBER
IS BEGIN
CASE WHEN REGEXP_LIKE(P_CHAR_STRING, '^[AOEUIDHTNS-aoeuidhtns_ ]{1,}$')
THEN RETURN 1;
ELSE RETURN 0;
END CASE;
END;
SELECT DECODE(IS_IT_DVORAK_HOME_ROW('This And That And These and Those Too'),1,'Home-Row!','Nope...') AS HOME_ROWNESS
FROM DUAL;
/