2017-04-25 6 views
0

私のJDBCコードはまったく何もしていません。それは "データベースへの接続"ステートメントを印刷しますが、それだけです。私はJDBC jarファイルを参照していますので、私のコードがうまくいかない理由が少し不思議です。私が取り組んでいるコードは以下の通りです。JDBCが動作しない

package exampleDatabase; 


import java.sql.*; 


public class Main { 

     // TODO Auto-generated method stub 


     static final String JDBC_DRIVER = "com.mysql.jdbc.Driver"; 
      static final String DB_URL = "jdbc:mysql://localhost:81/companylist"; 

      // Database credentials 
      static final String USER = "root"; 
      static final String PASS = ""; 

      public static void main(String[] args) { 
      Connection conn = null; 
      Statement stmt = null; 

      try{ 
       //STEP 2: Register JDBC driver 
       Class.forName("com.mysql.jdbc.Driver"); 

       //STEP 3: Open a connection 
       System.out.println("Connecting to database..."); 
       conn = DriverManager.getConnection(DB_URL,USER,PASS); 

       //STEP 4: Execute a query 
       System.out.println("Creating statement..."); 
       stmt = conn.createStatement(); 
       String sql; 
       sql = "SELECT ID, firstName, lastName,Email FROM Staff"; 
       ResultSet rs = stmt.executeQuery(sql); 

       //STEP 5: Extract data from result set 
       while(rs.next()){ 
       //Retrieve by column name 
       int ID = rs.getInt("ID"); 
       String firstName = rs.getString("firstName"); 
       String lastName = rs.getString("lastName"); 
       String Email = rs.getString("Email"); 

       //Display values 
       System.out.print("ID: " + ID); 
       System.out.print(", First: " + firstName); 
       System.out.println(", Last: " + lastName); 
       System.out.println(", Last: " + Email); 

       } 
       //STEP 6: Clean-up environment 
       rs.close(); 
       stmt.close(); 
       conn.close(); 
      }catch(SQLException se){ 
       //Handle errors for JDBC 
       se.printStackTrace(); 
      } catch (ClassNotFoundException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } 
      } 
    } 
+0

jdbc:mysql://localhost:3306/companylist

、これを試してみてください、あなたはポート81が右のポートであることを確認していますか? https://dev.mysql.com/doc/connector-j/en/connector-j-reference-configuration-properties.html – maximilianus

+0

エラーメッセージが表示されましたか?データベースのポートアドレスは正しいですか?あなたはそれが '81'であると確信していますか? –

+0

こんにちは私はそれがポートの問題だと思います。この投稿をチェックし、問題が解決したかどうかを確認してください。 http://stackoverflow.com/a/26788332/4022947 ありがとうございました –

答えて

0

データベースサーバーのPort Addressは、Webサーバーのポートではありません。したがって、これを解決するには、接続URLをjdbc:mysql://localhost:3306/companylistに変更する必要があります。3306は、MySQLデータベースサーバーのデフォルトのポートアドレスです。

-1

jdbc:mysql://localhost:81/companylistは無効です。

mysql databaseを使用しているため、デフォルトのportサーバーの番号は3306です。

だから、それが実行されます....

関連する問題