私は、ドライバがロードしている接続と接続が行われていることを確認しました。データベースを照会する私のメソッドはエラーなしで実行されていますが、5列と0行の空の結果セットが返されます(これはデバッグを介して検証されます)。テストデータベースに5つの列を持つ4つのレコードがあり、クエリはすべての結果を返すように求めます。私はちょうど疲れているかもしれません...何が失われたのかについての洞察は?ここにはクエリメソッドがあります。データベースファイルはアクセスです.mdbJAVA:データベースの結果セットはゼロ行を返し続けます。
パブリックArrayList fillResults() { ArrayList savedData = new ArrayList(); ステートメントstmt = null; 結果セットの結果= null;
try
{
stmt = conn.createStatement();
results = stmt.executeQuery(SELECT_ALL);
while(results.next())
{
for(short i = 0; i < 5; i++)
{
savedData.add(results.getString(i));
}
}
}
catch(SQLException ex)
{
JOptionPane.showMessageDialog(null, ex.getMessage() + ": error during retrieval.");
}
finally
{
try
{
results.close();
stmt.close();
} catch (SQLException e){}
}
return savedData;
}
正しいデータベースを使用していることを再確認してください。どのようにコードは、結果セットを反復処理しますか? –
しばらくの間(results.next()) \t \t \t { \t \t \t \t(ショートi = 0; iが5 <; iは++) \t \t \t \t { \t \t \t \t \t savedData.add(結果。 getString(i)); \t \t \t \t} \t \t \t} – Sinaesthetic
最初の列は、インデックス1を有し、0でない –