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

From Karen Goh
Subject Re: Fw: how to resolve org.postgresql.util.PSQLException: ERROR:operator does not exist: text = integer?
Date
Msg-id 59735533.1068095.1563265280844@mail.yahoo.com
Whole thread Raw
In response to Re: Fw: how to resolve org.postgresql.util.PSQLException: ERROR:operator does not exist: text = integer?  (Martin Stöcker <martin.stoecker@stb-datenservice.de>)
Responses Re: Fw: how to resolve org.postgresql.util.PSQLException: ERROR: operator does not exist: text = integer?
Re: how to resolve org.postgresql.util.PSQLException: ERROR: operatordoes not exist: text = integer?
List pgsql-sql
Can I know which forum to post to cos I think this may be the wrong forum. Cos it is sql so this forum maybe for sql execute inside the database. However, I read there is no more jdbc forum, correct me if I am wrong.


Sent from Yahoo Mail for iPhone

On Tuesday, July 16, 2019, 2:25 PM, Martin Stöcker <martin.stoecker@stb-datenservice.de> wrote:

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

Begin forwarded message:

On Tuesday, July 16, 2019, 2:14 PM, Karen Goh <karenworld@yahoo.com> 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

Begin forwarded message:

On Tuesday, July 16, 2019, 1:01 PM, David G. Johnston <david.g.johnston@gmail.com> wrote:

On Mon, Jul 15, 2019 at 6:59 PM Karen Goh <karenworld@yahoo.com> 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

pgsql-sql by date:

Previous
From: Martin Stöcker
Date:
Subject: Re: Fw: how to resolve org.postgresql.util.PSQLException: ERROR:operator does not exist: text = integer?
Next
From: Andrew Gierth
Date:
Subject: Re: Fw: how to resolve org.postgresql.util.PSQLException: ERROR: operator does not exist: text = integer?