5

我正在尝试使用groovy.sql.Sql连接到oracle12c数据库

Sql sql = Sql.newInstance('jdbc:oracle:thin:@'+hostName:port/serviceName, dbUser, dbPassword, 'oracle.jdbc.driver.OracleDriver')

它返回

java.sql.SQLException: ORA-28040: No matching authentication protocol

我想,这是因为方言不匹配。

它适用于oracle11g,但不适用于12c。如果是dialect的问题,我们如何在外部指定dialectgroovy.sql.Sql。如果不是,可能是什么问题/解决方案?

我正在使用ojdbc14驱动程序。

4

2 回答 2

9

ojdbc14是一个相对较旧的驱动程序,这可能是问题所在。我建议您尝试ojdbc6一下,看看是否可以解决您的问题。

请注意,这似乎解决了基于此 SO 问题ORA-28040: No matching authentication protocol exception中的评论中的信息的类似问题。

于 2014-08-05T16:26:05.437 回答
0

您是指通常配置的方言DataSource.groovy吗?如果是这样,这在创建Sql实例时无关紧要,因为方言仅由 Hibernate/GORM 使用。

于 2014-08-05T16:26:18.747 回答