java.lang.RuntimeException: java.sql.SQLSyntaxErrorException: ORA-00911: 无效字符

这种情况可能是因为在设置数据库的时候,没有配置数据库的方言,导致sql语句无法被识别。

例如在配置Jfinal的配置文件的时候

如果不配置数据库的方言,默认下它是MySQL的,当使用oracle数据库的时候,就会抛出异常:

java.lang.RuntimeException: java.sql.SQLSyntaxErrorException: ORA-00911: 无效字符 

同理在使用Jfinal的Generator的时候,不配置数据的方言也会出现该异常,如下图

总结:排除了自己的sql语言的错误的同时,如果出现

java.lang.RuntimeException: java.sql.SQLSyntaxErrorException: ORA-00911: 无效字符的异常

很可能就是数据库方言配置错误,或者根本就没有配置。

原文地址:https://www.cnblogs.com/getchen/p/8417816.html