Michał Lis
Michał Lis

Reputation: 529

ORA-00904 SQLSyntaxErrorException with executable query

I have following error while starting weblogic:

    [EL Warning]: 2017-11-23 10:27:49.559--ClientSession(1637726649)--Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.6.2.v20151217-774c696): org.eclipse.persistence.exceptions.DatabaseException
    Internal Exception: java.sql.SQLSyntaxErrorException: ORA-00904: "PRDX_COLOR": invalid identifier
    Error Code: 904
Call: 
           SELECT *
    FROM
      (SELECT a.*, ROWNUM rnum
       FROM
         (SELECT PRD_ID AS a1,
                 PRD_DOMAIN AS a2,
                 PRD_AUDIT_RD AS a3,
                 PRDX_COLOR AS a4
          FROM LCT_PRODUCTS
          WHERE ((PRD_AUDIT_RD IS NULL)
                 AND (PRD_DOMAIN = ?))) a
       WHERE ROWNUM <= ?)
    WHERE rnum > ?

So the message is clear for me that the following query cannot be executed properly. Somehow when I execute this in SqlDeveloper - everything is fine when in place into question marks 0. Does it assures that I connect to wrong database? I don't know if I diagnose it only with user priviliges.

Upvotes: 0

Views: 336

Answers (2)

Sanders the Softwarer
Sanders the Softwarer

Reputation: 2496

If query works into SQL Developer and raises ORA-904 from application it means that developer's and application's sessions are significally different. Please see Oracle where exists clause not working on SQL Plus to more details.

Upvotes: 1

Nik
Nik

Reputation: 247

It seems to me that the PRDX_COLOR column is not present in the LCT_PRODUCTS table (or view or synonym). That would be the first thing I would check. Hth Bye Nicola

Upvotes: 0

Related Questions