2017-10-03 61 views
0
私は日食の酸素とOracle 11gのを使用しています

が、私はセットアップJDBC接続しようとしています、 と私はORA-01017:無効なユーザー名/パスワード。ログオンが

Connection con = DriverManager.getConnection("jdbc:oracle:thin:testuser/[email protected]"); 

は、私はユーザー名とパスワードが正しいことを確信している接続ステートメントを使用していますが、それでも私は拒否しました午前中

java.sql.SQLException: ORA-01017: invalid username/password; logon denied 

    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:440) 
    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:389) 
    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:382) 
    at oracle.jdbc.driver.T4CTTIfun.processError(T4CTTIfun.java:573) 
    at oracle.jdbc.driver.T4CTTIoauthenticate.processError(T4CTTIoauthenticate.java:431) 
    at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:445) 
    at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:191) 
    at oracle.jdbc.driver.T4CTTIoauthenticate.doOAUTH(T4CTTIoauthenticate.java:366) 
    at oracle.jdbc.driver.T4CTTIoauthenticate.doOAUTH(T4CTTIoauthenticate.java:752) 
    at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:366) 
    at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:536) 
    at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:228) 
    at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32) 
    at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:521) 
    at java.sql.DriverManager.getConnection(Unknown Source) 
    at java.sql.DriverManager.getConnection(Unknown Source) 
    at JDBC.main(JDBC.java:12) 

助けてもらえますか?

+0

jdbc接続文字列にサービス名を指定していません。それは意図されていますか? – StephaneM

答えて

0

たぶん、あなたはJAVASEチュートリアルから取られたこのスニペットを使用して試すことができます:

Connection conn = null; 
Properties connectionProps = new Properties(); 
connectionProps.put("user", this.userName); 
connectionProps.put("password", this.password); 

if (this.dbms.equals("mysql")) { 
    conn = DriverManager.getConnection(
       "jdbc:" + this.dbms + "://" + 
       this.serverName + 
       ":" + this.portNumber + "/", 
       connectionProps); 
} else if (this.dbms.equals("derby")) { 
    conn = DriverManager.getConnection(
       "jdbc:" + this.dbms + ":" + 
       this.dbName + 
       ";create=true", 
       connectionProps); 
} 
System.out.println("Connected to database"); 
return conn; 

EDIT: または多分あなたは、このようなユーザーとパスワードを指定しようとすることができます:あなたが持っている

Connection conn = DriverManager.getConnection(" 
    jdbc:oracle:thin:@localhost:1521:example", "example","password123"); 
+0

私はユーザーとパスワードを指定しようとしましたが、疑問があります.1521年以降の例です(つまり、1521:例)ユーザー名ですか? – Dhirish

+0

いいえ、それはデータベースの名前です – Gaetano

+0

ありがとうGaetano、db名を提供しています。 – Dhirish

0

をデータベースのデフォルトの大文字と小文字を区別するユーザ名とパスワード。大文字と小文字を区別してユーザー名とパスワードを正しく入力するか、Oracle sec_case_sensitive_logon=falseの認証パラメータを変更する必要があります。

Connected to: 
Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production 

SQL> show parameter sec_case 

NAME         TYPE  VALUE 
------------------------------------ ----------- ----------------------------- 
sec_case_sensitive_logon    boolean  TRUE 
SQL> alter system set sec_case_sensitive_logon=false scope=both; 

System altered. 

SQL> show parameter sec_case 

NAME         TYPE  VALUE 
------------------------------------ ----------- ----------------------------- 
sec_case_sensitive_logon    boolean  FALSE 
SQL> 
関連する問題