Обсуждение: query works in psql, but not thru JDBC

Поиск
Список
Период
Сортировка

query works in psql, but not thru JDBC

От
"Arsalan Zaidi"
Дата:
Hi.

I'm running this query, which is constructed from parameters passed to a
function.

SELECT * FROM users WHERE userid = 4 ORDER BY name LIMIT 20 OFFSET 0

When I run it from the command line inpsql, It works just fine, but when I
run it using the Postgresql JDBC driver (executeQuery()), I get this error

------------------------
Err Mesg : ERROR: Attribute users.name must be GROUPed or used in an
aggregate function

SQL State : NULL
Error Code : 0
------------------------

Why does it work from the command line and not through JDBC?

Thanks in advance.

--Arsalan.



Re: query works in psql, but not thru JDBC

От
Tom Lane
Дата:
"Arsalan Zaidi" <azaidi@directi.com> writes:
> SELECT * FROM users WHERE userid = 4 ORDER BY name LIMIT 20 OFFSET 0

> When I run it from the command line inpsql, It works just fine, but when I
> run it using the Postgresql JDBC driver (executeQuery()), I get this error

> Err Mesg : ERROR: Attribute users.name must be GROUPed or used in an
> aggregate function

Curious.  Does JDBC alter the query at all before it sends it?  Try
turning on query logging at the postmaster, and look in the postmaster
log to see what is actually being sent.
        regards, tom lane