我正在使用JavaEE进行编码,并尝试从“ eclipse 2018-09”访问Oracle 18c数据库,我使用了ojdbc8并且ping成功,但是出现了此错误:“ ORA-28040:没有匹配的身份验证协议”。 经过一些研究,我发现我应该在sqlnet.ora文件中设置“ SQLNET.ALLOWED_LOGON_VERSION_SERVER = 11”和“ SQLNET.ALLOWED_LOGON_VERSION_CLIENT = 11”的值,但在此文件中找不到它们,因此我添加了它们,但仍然不起作用。 有人可以帮助我吗?
package controleur;
/* connexion à la base de données*/
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.TimeZone;
import java.sql.*;
public class AccessDB {
public static void main(String [] args) {
//Load the Oracle JDBC driver
Connection conn = null;
try {
Class.forName("oracle.jdbc.driver.OracleDriver") ;
System.out.println("Oracle JDBC driver loaded ok.");
}
catch (Exception e) {
System.err.println("Exception: "+e.getMessage());
}
//The connection
try {
String url="jdbc:oracle:thin:@localhost:1521:XE";
conn = DriverManager.getConnection(
url, "system", "liza");
System.out.println("Connected with @localhost:1521:XE.");
} catch (Exception e) {
System.err.println("Exception: "+e.getMessage());
}
}
}