Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
?
Solved

ORA-00936 Missing Expression, ORA-00972 identifier is too long

Posted on 2006-11-09
8
Medium Priority
?
1,356 Views
Last Modified: 2012-06-22
I am getting the above mentioned 2 errors on my PC (Windows 2000 server).
I have another PC which is Windows 2003 server which has same exact code and works fine.

My connect string looks like :
Provider=OraOLEDB.Oracle.1;Persist Security Info=False;User ID=bprod;Data Source=asbc;Extended Properties=""

********* Following query gives "ORA-00936 Missing Expression"
SELECT PK_ALERTS, ALERT_ID, ALERT_NAME, ALERT_CATEGORY, ALERT_TYPE, IS_ACTIVE,
IS_BLINKING, ALERT_TOOLTIP, ALERT_SOUND_FILE, DESCRIPTION, ALERT_DBLC_ACTION,
ALERT_ANIGIF_FILE, ALERT_CAPTION, ALERT_FG_COLOR, ALERT_BG_COLOR,
ALERT_USE_SOUND, ALERT_USE_SPEECH,
(SELECT COUNT(*) FROM USER_ALERTS WHERE ALERTS.ALERT_ID = USER_ALERTS.ALERT_ID
      AND USER_ALERTS.USER_ID = 'AWILDA' ) AS CNT
FROM ALERTS WHERE IS_ACTIVE <> 0 ORDER BY ALERT_ID

********* Following query gives "ORA-00972 identifier is too long"
SELECT TASKS.* ,
( SELECT VALUE_DESCR FROM FIELDS_VALUES WHERE FIELD_TYPE = 'TaskSubM'
      AND VALUE_CODE = TASKS.TASKSubMenuCode AND Active <> 0 ) AS TaskSubMenu
FROM TASKS WHERE ACTIVE <> 0  

Both the queries when run from TOAD work fine.
The database is on Oracle9.

Regards
VU3LMG
0
Comment
Question by:vu3lmg
  • 2
  • 2
  • 2
  • +1
7 Comments
 
LVL 14

Expert Comment

by:GGuzdziol
ID: 17912437
Maybe there's some problem with subqueries? I don't know what You are using since You provided no information on that.
If this is the issue, You can try rewritting Your first code to:

SELECT ALERTS.PK_ALERTS, ALERTS.ALERT_ID, ALERTS.ALERT_NAME, ALERTS.ALERT_CATEGORY, ALERTS.ALERT_TYPE, ALERTS.IS_ACTIVE,
    ALERTS.IS_BLINKING, ALERTS.ALERT_TOOLTIP, ALERTS.ALERT_SOUND_FILE, ALERTS.DESCRIPTION, ALERTS.ALERT_DBLC_ACTION,
    ALERTS.ALERT_ANIGIF_FILE, ALERTS.ALERT_CAPTION, ALERTS.ALERT_FG_COLOR, ALERTS.ALERT_BG_COLOR,
    ALERTS.ALERT_USE_SOUND, ALERTS.ALERT_USE_SPEECH, COUNT(*) AS CNT
  FROM ALERTS
    LEFT OUTER JOIN USER_ALERTS ON ALERTS.ALERT_ID = USER_ALERTS.ALERT_ID AND USER_ALERTS.USER_ID = 'AWILDA'
  WHERE IS_ACTIVE <> 0
  GROUP BY ALERTS.PK_ALERTS, ALERTS.ALERT_ID, ALERTS.ALERT_NAME, ALERTS.ALERT_CATEGORY, ALERTS.ALERT_TYPE, ALERTS.IS_ACTIVE,
    ALERTS.IS_BLINKING, ALERTS.ALERT_TOOLTIP, ALERTS.ALERT_SOUND_FILE, ALERTS.DESCRIPTION, ALERTS.ALERT_DBLC_ACTION,
    ALERTS.ALERT_ANIGIF_FILE, ALERTS.ALERT_CAPTION, ALERTS.ALERT_FG_COLOR, ALERTS.ALERT_BG_COLOR,
    ALERTS.ALERT_USE_SOUND, ALERTS.ALERT_USE_SPEECH
  ORDER BY ALERT_ID

and second to

SELECT TASKS.* ,
    FIELD_VALUES.VALUE_DESCR AS TaskSubMenu
  FROM TASKS
    LEFT OUTER JOIN FIELDS_VALUES ON FIELDS_VALUES.VALUE_CODE = TASKS.TASKSubMenuCode AND FIELD_VALUES.Active <> 0 AND FIELD_TYPE = 'TaskSubM'
  WHERE ACTIVE <> 0  

(If You are sure that link always exists - both queries - feel free to change left outer join to inner join).
0
 
LVL 28

Expert Comment

by:Naveen Kumar
ID: 17914680
are you getting the errors in sql*plus, if so then paste the errors which will show which line the errors are for the above queries.

Thanks
0
 
LVL 1

Author Comment

by:vu3lmg
ID: 17915274
a) As I mentioned initially, the database is Oracle9.
b) The problem must NOT be with sub queries because I have another Widows 2003 PC which runs same exact code to same exact database and these queries work fine.

Regards
VU3LMG
0
Get your Conversational Ransomware Defense e‑book

This e-book gives you an insight into the ransomware threat and reviews the fundamentals of top-notch ransomware preparedness and recovery. To help you protect yourself and your organization. The initial infection may be inevitable, so the best protection is to be fully prepared.

 
LVL 28

Accepted Solution

by:
Naveen Kumar earned 2000 total points
ID: 17915497
seems to be db bug or some installation issues like initialization/default settings but not really sure as to what could be the real culprit here.

Though expensive and time consuming, try to install the same version of db in another system and try. If it works, then it has to do something with this problematic system. If there also, it fails then it is for sure some bug in the software you are installing :)

Thanks
0
 
LVL 14

Expert Comment

by:GGuzdziol
ID: 17928764
>> b) The problem must NOT be with sub queries because I have another Widows 2003 PC which runs same exact code to same exact database and these queries work fine.

I meant: those statements are obviously correct, but maybe there's some problem with Your connection provider. As You say it cannot be problem with db itself, so try if any query would work, i.e. issue select * from dual and see if this would fail.
0
 
LVL 1

Author Comment

by:vu3lmg
ID: 17988593
Alright guys, finally found the problem.  Oracle9i update was not installed.
0
 
LVL 1

Expert Comment

by:Computer101
ID: 20296212
Forced accept.

Computer101
EE Admin
0

Featured Post

NEW Veeam Backup for Microsoft Office 365 1.5

With Office 365, it’s your data and your responsibility to protect it. NEW Veeam Backup for Microsoft Office 365 eliminates the risk of losing access to your Office 365 data.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction A previously published article on Experts Exchange ("Joins in Oracle", http://www.experts-exchange.com/Database/Oracle/A_8249-Joins-in-Oracle.html) makes a statement about "Oracle proprietary" joins and mixes the join syntax with gen…
From implementing a password expiration date, to datatype conversions and file export options, these are some useful settings I've found in Jasper Server.
This video shows how to configure and send email from and Oracle database using both UTL_SMTP and UTL_MAIL, as well as comparing UTL_SMTP to a manual SMTP conversation with a mail server.
This video shows how to copy an entire tablespace from one database to another database using Transportable Tablespace functionality.
Suggested Courses

576 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question