2012-03-19 20 views
-2

私はpostgresデータベースと "state_master"という名前のテーブルを持っています。私はこのテーブルから次のコードでデータを取得しています。データベースエラー:関係は存在しません

import java.sql.*; 

public class Test1 
{  

    public static void main(String... s1) 
    { 
     try{ 

       Class.forName("org.postgresql.Driver"); 
       Connection con = DriverManager.getConnection("jdbc:postgresql://localhost:5432:secc_db","postgres", password"); 
       Statement s = con.createStatement(); 
       ResultSet rs = s.executeQuery("Select * from state_master"); 


       }catch(SQLException e){ System.out.println(e);} 

       catch(Exception i){System.out.println(i);} 

     } 
     } 

エラーは、relation state_master does not existです。この問題を解決するのを手伝ってください。

+2

コードを読みやすいようにフォーマットしてください。 –

答えて

1

erroeは、state_masterテーブルがユーザ(データベース)のpostgresに存在しないことを意味します。データベースにstate_masterテーブルが作成されているかどうかを確認します。最初にテーブルを作成しない場合は、プログラムを実行してください。

+0

はい私のデータベースにテーブルがあります 私はそれを100回チェックしました – ASH

+0

ndの名前も同じ "state_master"です。 – ASH

+0

問題が見つかりました。 接続文字列を書くとき DriverManager.getConnection( "jdbc:postgresql:// localhost:5432:secc_db"、 "postgres"、 "nic @ 123"); コントローラは指定したデータベースには行きませんが、postgres という名前のデフォルトのデータベースに行きますが、なぜそれが問題なのかを知ることはできません。 – ASH

1

接続URLが正しくありません。コロン(:)を使用してデータベースを指定しています。 スラッシュ(/)のようにする必要があります。"jdbc:postgresql://localhost:5432/secc_db"

関連する問題