Re: Fw: how to resolve org.postgresql.util.PSQLException: ERROR: operator does not exist: text = integer?

Martin Stöcker <[email protected]> Tue, 16 Jul 2019 08:25:17 +0200
Newsgroups gmane.comp.db.postgresql.sql
Message-ID <[email protected]>
Hi,

please post your statement but not all this java stuff.
Nobody knows the type and content of your builder varaible.

Regards Martin




Am 16.07.2019 um 08:17 schrieb Karen Goh:
> Hi,
>
> This is a continuation of my last problem - not sure if I should write 
> from there cos the first part was solved with the help from this group.
>
> I was trying to get the matching tutor_id with the parameter values 
> which is in this case subject_names from a table which contains both 
> the tutor_id and the subject_names.
>
> Here's the error message:
>
> org.postgresql.util.PSQLException: ERROR: operator does not exist: 
> text = integer
>   Hint: No operator matches the given name and argument type(s). You 
> might need to add explicit type casts.
>   Position: 69
>     at 
> org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2433)
>     at 
> org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2178)
>     at 
> org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:306)
>     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.doPost(searchController.java:108)
>
> Here's the code snippet which I do not know where I had gone wrong:
>
>
>             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);
> HashMap<Integer, ArrayList<String>> tutorSubject = new 
> HashMap<Integer, ArrayList<String>>();
> for(String item : subjs) {
>             int tutor_id = tutor.getTutor_id();
>             ps2.setInt(1, tutor_id);
>             if (item != null) {
>                 subjs.add(item);
>             ps2.setString(2, item);
>             }
>             ps2.executeQuery();
>         while (rs.next()) {
>                     tutor_id = rs.getInt("tutor_id");
> subjs.add(rs.getString("subject_name"));
>
> tutorSubject.put(tutor_id, subjs);
> System.out.println(tutorSubject);
>                         }
>
>             System.out.println("tutor ID=" + rs.getInt("tutor_id") + 
> ", subjectName=" + rs.getString("subject_name"));
>
>
> Hope someone could point out my mistake.
>
> Thanks.
>
>
> Sent from Yahoo Mail for iPhone 
> <https://overview.mail.yahoo.com/?.src=iOS>
>
> Begin forwarded message:
>
> On Tuesday, July 16, 2019, 2:14 PM, Karen Goh <[email protected]> 
> wrote:
>
>     Attn to all:
>
>     For sone kind of strange reason I do not know why the mail is not
>     sent to all.
>
>     I have normally wrote n replied to the last person who wrote but
>     yahoo mail didn’t let me write at there.
>
>     Hope everyone receives this mail this time round.
>
>     N please help me.
>
>     Tks!
>
>
>
>
>     Sent from Yahoo Mail for iPhone
>     <https://overview.mail.yahoo.com/?.src=iOS>
>
>     Begin forwarded message:
>
>     On Tuesday, July 16, 2019, 1:01 PM, David G. Johnston
>     <[email protected]> wrote:
>
>         On Mon, Jul 15, 2019 at 6:59 PM Karen Goh
>         <[email protected] <mailto:[email protected]>> wrote:
>
>
>             May I know why did you say I am comparing subject_name to
>             an integer ?
>
>             I am trying to get both tutor_id and subject_name from the
>             same table based on the no of ? in subjectName as per
>             parameterValues.
>
>
>         Again, you need to send messages to the mailing, not me
>         personally.
>
>         That said you might want to first figure out what:
>
>         ps2.setInt(1, tutor_id);
>
>         is supposed to accomplish in your code.
>
>         David J.
>

-- 

Widdersdorfer Str. 415, 50933 Köln; Tel. +49 / 221 / 9544 010
HRB Köln HRB 75439, Geschäftsführer: Dr. Dirk Goldner