私はこのSQL文を持っています:
selectAllUsersByCriteria = connection.prepareStatement( "SELECT * FROM ユーザー WHERE ? = ?" );
そして、ステートメントを実行する次のメソッド:
public ArrayList<User> getUsersByCriteria(String 1criteria, String 2criteria)
{
ArrayList<User> results = null;
ResultSet resultSet = null;
try
{
selectAllUsersByCriteria.setString( 1, 1criteria);
selectAllUsersByCriteria.setString( 2, 2criteria);
// executeQuery returns ResultSet containing matching entries
resultSet = selectAllUsersByCriteria.executeQuery();
results = new ArrayList< User >();
while ( resultSet.next() )
{
results.add( new User( resultSet.getString( "userName" ),
resultSet.getString( "Password" ),
resultSet.getBoolean( "AdminRights" ),
resultSet.getDouble( "Balance" )
) );
} // end while
} // end try
catch ( SQLException sqlException )
{
sqlException.printStackTrace();
} // end catch
finally
{
try
{
resultSet.close();
} // end try
catch ( SQLException sqlException )
{
sqlException.printStackTrace();
close();
} // end catch
} // end finally
return results;
}
うまくいきません。私はそれが最初だと思いますか?それが問題です。WHERE を設定することはできませんか? として ?。別の方法で解決できますか。
これは私が表示したいテーブルですが、それをフォローしているユーザーが 2 つの基準を満たしていることだけを示す必要があります。