Would like to know what is the problem in my sql statement

From: Karen Goh <karenworld(at)yahoo(dot)com>
To: pgsql-sql(at)lists(dot)postgresql(dot)org
Subject: Would like to know what is the problem in my sql statement
Date: 2019-07-12 02:04:39
Message-ID: 662129345.116124.1562897079696@mail.yahoo.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-sql

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);
}

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Juan C. Olivares 2019-07-12 02:11:27 Re: Would like to know what is the problem in my sql statement
Previous Message andrey.sychev 2019-07-04 09:35:58 Error: rows returned by function are not all of the same row type