Appendix D. Oracle不建议使用特性

1. 物化视图

2. VPD

3. bfile(含jdbc、oci)

4. 触发器

5. EXECUTE IMMEDAITE '匿名块' USING ... RETURN ...,明确不支持EXECUTE IMMEDIATE嵌套EXECUTE IMMEDIATE

6. oracle 8i时代的旧数据类型如LONG/RAW

7. 12c新概念如shard、inmemory相关

8. LATERAL(12c开始)

9. XML类型

10. merge into matched同时包含update和delete

11. connect by rownum +/- 列/值

12. 不支持子查询中使用rowid

13. 不支持Geometry地理空间类型

14. 不支持oracle oci接口兼容

15. 不支持pro*c单进程多线程,仅支持多进程、单线程

16. 不支持model、SQL内联函数

17. 不支持ANYDATA类型

18. 不支持序列18c新特性NOSCALE、NOEXTEND

19. 不支持bitmap index

20. PL/SQL调用者、定义者权限

21. securefile(含jdbc、oci)

22. vsize函数(使用lengthb代替)

23. oracle错误号兼容

24. 不支持rownum = n的用法,= n官方明确说明恰巧正确,具有不确定性

25. 不支持TRANSLATE(char USING{ CHAR_CS | NCHAR_CS })的用法,也就是转换字符集。但是字符串替换支持的(也就是https://www.php.cn/faq/122750.html的示例支持)。

26. 不支持interval '' year to year,interval '' month to month,其它day, hour, minute, second同理,(没错,是XXX to XXX,不是XXX to YYY。也就是to两头的单位相同)

27. 不支持character varying ANSI SQL类型,请使用VARCHAR2或NVARCHAR2,参见ANSI SQL数据类型转oracle数据类型 https://docs.oracle.com/en/database/oracle/oracle-database/12.2/sqlqr/Data-Types.html#GUID-7FDD9381-7E1F-45FC-97FA-4CAFE1705350

28. oracle wallet(钱包)

29. PLAN_TABLE

30. 数据文件操作

31. 表空间操作

31. 存储过程out参数传常量时不会报错(在oracle下会报错)。