Hi,
I hope that I am in the right forum because I am using pgAdmin4 running on Windows 10 to manage my database.
However, the question I have is to do with a sql that is not working out quite right hence this forum.
The error I am getting is
org.postgresql.util.PSQLException: No value specified for parameter 1.
at org.postgresql.core.v3.SimpleParameterList.checkAllParametersSet(SimpleParameterList.java:257)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:290)
at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:441)
at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:365)
at org.postgresql.jdbc.PgPreparedStatement.executeWithFlags(PgPreparedStatement.java:155)
at org.postgresql.jdbc.PgPreparedStatement.executeQuery(PgPreparedStatement.java:118)
at Controller.searchController.processRequest(searchController.java:123)
at Controller.searchController.doGet(searchController.java:77)
Basically, I am trying to retrieve from a table which contains the id and also the subjects as per the user input
parameterValues.
Here's my code snippet.
Please tell me why it says no value specified for parameter 1.
HashMap<Integer, ArrayList<String>> tutorSubject = new HashMap<Integer, ArrayList<String>>();
String sql1 = "select tutor_id, subject_name from tutor_subject where subject_name in ("
+ builder.deleteCharAt( builder.length() -1 ).toString() + ")";
PreparedStatement ps2 = connection.prepareStatement(sql1);
rs = ps2.executeQuery();
if (rs.next()) {
while(rs.next()) {
// System.out.println("tutor ID=" + rs.getInt("tutor_id") + ", subjectName=" +
rs.getString("subject_name"));
for( Object o : subjs ) {
int tutor_id = rs.getInt(1);
ps2.setInt(1, tutor_id);
int index = 1;
for( Object o : subjs ) {
ps2.setObject(index++, o );
for (int j = 0; j < tutorSubject.put(tutor_id, (ArrayList<String>) o).size(); j++) {
tutorSubject.put(tutor_id, (ArrayList<String>) o);
}