JDBC 连接 java 与 Oracle 18c 时出错

JDBC error while connecting java with Oracle 18c

当我将 Oracle 18c 数据库与 java 连接时出现以下错误。 我正在使用的命令。

Class.forName("oracle.jdbc.driver.OracleDriver"); 
        Connection con=DriverManager.getConnection("jdbc:oracle:thin:@100.100.209.28:1521:PDB1","cmiapps","WEXXXX##");

我遇到错误。

Listener refused the connection with the following error:
ORA-12505, TNS:listener does not currently know of SID given in connect descriptor

当我在 运行 下面查询时,我得到 PDB1 作为服务名称。

select name from dba_services;

你能帮我解决这个问题吗?

正如@thatjeffsmith 在评论中提到的,您不能使用 SID 连接 PDB 数据库。你将不得不使用 service name 来达到同样的效果。