私はこのプロジェクトをやろうとしていますが、大きな問題があります。属性 cid を持つテーブル test2 を作成しました。SQL コマンド ラインで次のコマンド ラインを使用して、ユーザーを cid に追加しました。
create table test2(cid varchar(20));
insert into test2 values('hello');
select cid from test2;
次に、結果を次のように取得します
CID
-----------------------
HELLO
私の質問は、サーバーへのEclipseでjdbcを使用しようとしたときに、rs.next()がfalseとして取得されることです(rsは結果セットです)。明らかに、テーブル test2 内に 'hello' があります。これが私のコードです。誰かがこれを手伝ってくれるなら、私はそれを感謝します:
public boolean connect(String username, String password)
{
String connectURL = "jdbc:oracle:thin:@dbhost.xxx.xx.xxx.ca:1522:ug";
try
{
con = DriverManager.getConnection(connectURL,username,password);
System.out.println("\nConnected to Oracle!");
ResultSet rs;
try
{
Statement stmt = con.createStatement();
rs = stmt.executeQuery("SELECT cid FROM test2");
System.out.println("here");
while(rs.next())
{
System.out.println("there");
System.out.println("cid isssssssssss: " + rs.getString("cid"));
}
System.out.println("after here");
stmt.close();
}
catch (SQLException ex)
{
System.out.print("Message: " + ex.getMessage());
}
try {
con.close();
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
return true;
}
catch (SQLException ex)
{
System.out.println("Message: " + ex.getMessage());
return false;
}
}
cid を別のものに変更すると、sqlexception によってエラー メッセージが表示されたため、接続が存在します。したがって、接続しますが、サーバーからクエリを取得しません。
rs = stmt.executeQuery("SELECT something FROM test2");
Connected to Oracle!
Message: ORA-00904: "SOMETHING": invalid identifier
私を困惑させます。再度、感謝します。