ORA-02289: sequence does not exist Error
When add Entity Attribute Value : adf.object.nextVal('DenialCommentId')
Value Type: Expression
Iam getting ORA-02289: sequence does not exist Error in 11g 1.1.3.0 version .How to Solve it .Any solutions please suggest me .Thanx in advance
Ravi
try using adf.object.nextValue('DenialCommentId') to find out whether the compiler is looking for a sequence named object in schema adf or not.
Regards
Etbin
Similar Messages
-
Error creating sdo_pc point cloud: "ORA-02289: sequence does not exist"
Oracle Database 12c Enterprise Edition Release 12.1.0.1.0
I've come across a problem when creating point clouds - every so often I'll get an error about a sequence not existing.
ERROR at line 1:
ORA-13199: Invalid Parameters for Partition_Table
ORA-13199: Invalid Parameters for Partition_Table
ORA-13249: Stmt-Execute Failure: DROP SEQUENCE "MDPCS_a_17745$$$"
ORA-29400: data cartridge error
ORA-02289: sequence does not exist
ORA-06512: at "MDSYS.PRVT_PC", line 3
ORA-06512: at "MDSYS.PRVT_PC", line 171
ORA-06512: at "MDSYS.SDO_PC_PKG", line 179
ORA-06512: at line 17
I've got a test case which creates a table where we'll put a sdo_pc, a block table and then a loading XYZ table. We then loop a bunch of times and create a PC for each.
Test case setup:
create table pc_test (
id integer primary key,
pc sdo_pc);
create sequence pc_test_id;
create table pc_test_blocks as select * from mdsys.sdo_pc_blk_table;
create table xyz (
rid number,
val_d1 number,
val_d2 number,
val_d3 number);
insert /*+ append */ into xyz (
select
rownum,
round(dbms_random.value(1,10000),2),
round(dbms_random.value(1,10000),2),
round(dbms_random.value(20,50),2)
from dual
connect by level <= 1000);
commit;
Run test case:
declare
l_pc sdo_pc;
l_id pls_integer;
begin
for i in 1..50 loop
l_pc := sdo_pc_pkg.init(
'PC_TEST', 'PC', 'PC_TEST_BLOCKS', 'blk_capacity=500',
sdo_geometry(2003, 2157, NULL, sdo_elem_info_array(1,1003,3), sdo_ordinate_array(400000, 500000, 800000, 1000000)),
0.005, 3, null);
l_id := pc_test_id.nextval;
dbms_output.put_line('PC_TEST id=' || l_id);
insert into pc_test (id, pc) values (l_id, l_pc);
sdo_pc_pkg.create_pc(l_pc, 'XYZ');
end loop;
end;
Some of the PCs will create, but eventually it'll blow up with
ORA-02289: sequence does not exist
In so far as I can tell, once I call sdo_pc_pkg.create_pc(), Oracle is creating a sequence with a name such as MDPCS_a_1751F$$$. When it is done creating the blocks, it then tries to drop the sequence. However the statement to drop the sequence is wrapped in double quotes - so if the sequence name contained any lowercase letters then it will error out when trying to drop it. The values used between the underscores seem to be hexadecimal - sometimes they're numbers only, sometimes numbers and uppercase letters, sometimes numbers and lowercase letters.
Has anybody else come across this issue?
The issue isn't critical as the PC blocks do seem to be created correctly, so the issues are: (a) my pl/sql block errors out and (b) I'm left with sequences lying around.
For the former I'll catch the exception and ignore it, for the latter I'll just drop the sequences myself afterwards.I tried the test on 11.2.0.4. On that release I get an error during a rename:
ERROR at line 1:
ORA-13199: Invalid Parameters for Partition_Table
ORA-13199: Invalid Parameters for Partition_Table
ORA-13249: Stmt-Execute Failure: RENAME "MDPCI_a_26062$$$" TO "M3_A_26062$$"
ORA-29400: data cartridge error
ORA-04043: object MDPCI_a_26062$$$ does not exist
ORA-06512: at "MDSYS.PRVT_PC", line 3
ORA-06512: at "MDSYS.PRVT_PC", line 157
ORA-06512: at "MDSYS.SDO_PC_PKG", line 74
ORA-06512: at line 17 -
Error ORA-02289: sequence does not exist
While I was practicing chapter 6 a book on "hands-on oracle database 10 g express edition for windows" by Mr. Bobrowski forwarded by tom kyte, I like to be one those as well, lol, the living legend of oracle technology <page 225-226> , I got the following error while trying to insert the data manually
error ORA-02289: sequence does not exist
I also checked the sequence, it does exist ,
host-ids, db-ids, ap-ids all do exists
I am wondering my OS windows xp and however, I have entered AIX in host OS field and 5.2.0.0 in the hostos_version field and cpu=4
I kind do not understand this too since my pc running windows xp
any help would be appreciated since i couldn't go forward in my practice.
I e-mailed the author of the book (oracle Press) but no-reply so far, well I can understand that there is no money.Basically, I copied everything from the cd-rom provided in the book of this author steve, oracle press. I logged on using my account <system> and password. The user is here only one which is <system>.
Everything was working well, until then as per the direction in the chapters upto 1- to mid 6, this is the first time I am stuck in following this book's simple excercises. It also asks me to look at the object if the sequence host_ids does exists in the drop down combo, as a matter of fact it does exist.
I am still wondering my question "my OS windows xp and however, I have entered AIX in host _OS field and 5.2.0.0 in the host_os_version field and cpu=4
I kind do not understand this too since my pc running windows xp " -
Dears,
I created simple custom workflow (Start -> Notification -> End).
I got the following error when I run the workflow.
[WF_ERROR] ERROR_MESSAGE=ORA-02289: sequence does not exist ERROR_STACK= FND_SEARCH_EVENTS.On_Object_Change(oracle.apps.wf.notification.send, 5C84790B967158FFE04400144F23BF3C)
The notification activity returned this error but the notification has been sent to performer.
I searched for solution to fix this problem and I found one result for the same problem without any solution.
http://www.itpub.net/thread-1558559-1-1.html
Thank youIt looks as if DB sequence FND_SEARCH_EVENTS_SEQ does not exist. Please try to reload it as follows:
java oracle.apps.fnd.odf2.FndXdfCmp applsys <pwd> apps <pwd> thin "<db server>:<db port>:<SID>" all $FND_TOP/patch/115/xdf/fnd_search_events_seq.xdf $FND_TOP/patch/115/xdf/xsl
Regards,
Alejandro -
I know the reason is that PL/SQL is pre-compilation, so now dbVersion < '9.3.350', even if I don't need get REFDESIG_ID_SEQ.nextval ,
it will also cause this compilation error. So my question is how should I code that?
When dbVersion < '9.3.350' , no sequence REFDESIG_ID_SEQ, just print '1####';
else get REFDESIG_ID_SEQ.nextval , then print '2####'
But now even if dbVersion < '9.3.350', it will cause compilation error[ORA-02289: sequence does not exist] .
How to resolve this? Thanks a lot.
declare
maxid number;
nextid number;
agileid number;
v_date date;
dbVersion varchar(8):=0;
begin
select substr(value,1,7) into dbVersion from propertytable where parentid = 5001 and propertyid=37;
DBMS_OUTPUT.PUT_LINE(dbVersion);
if (dbVersion < '9.3.350') then
DBMS_OUTPUT.PUT_LINE('1####');
else
DBMS_OUTPUT.PUT_LINE('2####');
select REFDESIG_ID_SEQ.nextval into agileid from dual;
end if;
end;In my DB, If dbVersion < '9.3.350' , no sequence REFDESIG_ID_SEQ
When dbVersion >= '9.3.350' ,sequence REFDESIG_ID_SEQ will exist,
Now my dbVersion < '9.3.350' , and this pl/sql also cause this error.
SO how should I to resolve it ?
Now I need a test case, if dbVersion < '9.3.350' , then print '1####';
else , get REFDESIG_ID_SEQ.nextval firstly , then print '2####'
How should I code?Thanks a lot. -
ORA-02289 (10: 10): PL/SQL: ORA-02289: sequence does not exist
Hi,
I want to run a trigger on SCOTT account.But wheni try to run it.I am getting ' ORA-02289 (10: 10): PL/SQL: ORA-02289: sequence does not exist'.PLease help outSequence FUNCTION_SEQ does not exist...
Pease run
Select * from user_objects
where object_type='SEQUENCE'
and object_name='FUNCTION_SEQ'In order to see that this object doesnt exist on your schema...
Maybe you are trying to use sequence in different schema... Check it out too
Select * from all_objects
where object_type='SEQUENCE'
and object_name='FUNCTION_SEQ'And if you has access to DBA_ views check this too...
Select * from dba_objects
where object_type='SEQUENCE'
and object_name='FUNCTION_SEQ'If you need such sequence please give us an example of values you need and will provide a sequence creation script for you.. -
; ORA-02289: sequence does not exist + while sync
Hi..
I've installed the samples on the mobile server and on the palm-emulator and want to sync now.
I always get the following error at the server:
BMS: OWNER IS NOT A CLIENT
log1: log_S11U1
BMS: conn user =MOBILEADMIN, e[0]=S11U1
BMS
log1: log_S11U1
BMS: SELECT "S11U1
BMS"."TID$$".NEXTVAL FROM DUAL
Decrement client download 0
log1: log_S11U1
-!!!- BMS: Exception message is ORA-02289: Diese Sequenz gibt es nicht -!!!-
log1: log_S11U1
BMS: Starting Consolidator Servlet Context Run...
log1: log_S11U1
BMS: SENDING data...
log1: log_S11U1
What's wrong here? Please help me.
Thanks,
AlHi ,
I too got similar errors few months ago and i reset the user parameters of that user (webtogo->users->datasubsetting )and it automatically cleared with a complete refresh of the publication. -
ORA-02289: sequence does not exist
Hi all. ORACLE Newbie alert!
I am using TOAD for Oracle 8.6
The Oracle database version is
BANNER
Oracle9i Enterprise Edition Release 9.2.0.6.0 - 64bit Production
PL/SQL Release 9.2.0.6.0 - Production
CORE 9.2.0.6.0 Production
TNS for Solaris: Version 9.2.0.6.0 - Production
NLSRTL Version 9.2.0.6.0 - Production
I have been tasked with monitoring a table from another schema, using a different account.
The first thing I did was create this table in my SOMERSET schema
CREATE TABLE MONITOR_PERSONS
IDENTIFIER INTEGER,
OLD_FAMILY_NAME VARCHAR2(40 BYTE),
OLD_FIRST_NAMES VARCHAR2(40 BYTE),
NEW_FAMILY_NAME VARCHAR2(40 BYTE),
NEW_FIRST_NAMES VARCHAR2(40 BYTE),
UPDATE_DATE DATE,
UPDATE_STATUS CHAR(1 CHAR),
PERSONS_IDENTIFIER INTEGER
then a SEQUENCE to be used by the above table
CREATE SEQUENCE SOMERSET.MONITOR_PERSONS_SEQ
START WITH 1
MAXVALUE 999999999999999999999999999
MINVALUE 1
NOCYCLE
NOCACHE
NOORDER;
then a trigger to watch the other schema's table and insert a record in my MONITOR_PERSONS table
CREATE OR REPLACE TRIGGER PERSONS_AFTER_UPDATE
AFTER UPDATE
OF FAMILY_NAME
,FIRST_NAMES
ON SWIFT_OWNER.PERSONS
REFERENCING NEW AS NEW OLD AS OLD
FOR EACH ROW
BEGIN
INSERT INTO SOMERSET.MONITOR_PERSONS
IDENTIFIER,
OLD_FAMILY_NAME,
OLD_FIRST_NAMES,
NEW_FAMILY_NAME,
NEW_FIRST_NAMES,
UPDATE_DATE,
UPDATE_STATUS,
PERSONS_IDENTIFIER)
VALUES
SOMERSET.MONITOR_PERSONS_SEQ.nextval,
:OLD.FAMILY_NAME,
:OLD.FIRST_NAMES,
:NEW.FAMILY_NAME,
:NEW.FIRST_NAMES,
sysdate,
'U',
:OLD.IDENTIFIER);
END PERSONS_AFTER_UPDATE;
Which compiles with this error
18/11 PLS-00302: component 'MONITOR_PERSONS_SEQ' must be declared
I have been around the net a number of times, and I just can't figure out why a sequence that exists in the same schema as the trigger is causing this issue.
Can someone help please?Don't know why that would be. But here is the test result:
SQL> create table mytable_without_trigger
2 ( id number
3 , name varchar2(30)
4 )
5 /
Tabel is aangemaakt.
SQL> create table mytable_with_trigger
2 ( id number
3 , name varchar2(30)
4 )
5 /
Tabel is aangemaakt.
SQL> create sequence myseq start with 1 increment by 1 nocache
2 /
Reeks is aangemaakt.
SQL> create package my_package
2 as
3 function get_new_id return number;
4 end;
5 /
Package is aangemaakt.
SQL> create package body my_package
2 as
3 function get_new_id return number
4 is
5 l_new_id number;
6 begin
7 select myseq.nextval into l_new_id from dual;
8 return l_new_id;
9 end;
10 end;
11 /
Package-body is aangemaakt.
SQL> create or replace trigger my_trigger
2 before insert on mytable_with_trigger
3 for each row
4 begin
5 :new.id := my_package.get_new_id;
6 end;
7 /
Trigger is aangemaakt.
SQL> insert into mytable_without_trigger (id,name) select myseq.nextval, 'abc' from (select level from dual connect by level <= 100)
2 /
100 rijen zijn aangemaakt.
SQL> insert into mytable_with_trigger (name) select 'abc' from (select level from dual connect by level <= 100)
2 /
100 rijen zijn aangemaakt.
SQL> set timing on
SQL> insert into mytable_without_trigger (id,name) select myseq.nextval, 'abc' from (select level from dual connect by level <= 10000)
2 /
10000 rijen zijn aangemaakt.
Verstreken: 00:00:05.09
SQL> insert into mytable_with_trigger (name) select 'abc' from (select level from dual connect by level <= 10000)
2 /
10000 rijen zijn aangemaakt.
Verstreken: 00:00:08.09
SQL> set timing off
SQL> begin
2 runstats_pkg.rs_start;
3 insert into mytable_without_trigger (id,name) select myseq.nextval, 'abc' from (select level from dual connect by level <= 10000);
4 runstats_pkg.rs_middle;
5 insert into mytable_with_trigger (name) select 'abc' from (select level from dual connect by level <= 10000);
6 runstats_pkg.rs_stop(1000);
7 end;
8 /
Run1 draaide in 514 hsecs
Run2 draaide in 848 hsecs
Run1 draaide in 60,61% van de tijd
Naam Run1 Run2 Verschil
STAT.session cursor cache hits 10,002 8,157 -1,845
LATCH.enqueues 38 1,897 1,859
LATCH.session idle bit 62 1,979 1,917
LATCH.library cache pin allocation 20,354 24,253 3,899
STAT.redo entries 20,151 30,094 9,943
STAT.buffer is not pinned count 51 10,051 10,000
STAT.table scan blocks gotten 1 10,001 10,000
STAT.table scans (short tables) 1 10,001 10,000
STAT.table scan rows gotten 1 10,001 10,000
STAT.no work - consistent read gets 33 10,033 10,000
STAT.recursive calls 140,097 150,097 10,000
STAT.execute count 10,008 20,008 10,000
STAT.db block gets 30,514 40,630 10,116
LATCH.redo allocation 22,401 33,442 11,041
LATCH.shared pool 51,928 67,626 15,698
STAT.db block changes 40,263 60,235 19,972
STAT.consistent gets 20,100 50,084 29,984
STAT.calls to get snapshot scn: kcmgss 30,014 60,014 30,000
LATCH.library cache pin 97,379 128,794 31,415
STAT.session logical reads 50,614 90,714 40,100
LATCH.library cache 111,694 152,456 40,762
LATCH.cache buffers chains 199,536 341,151 141,615
LATCH.session allocation 2,168 286,896 284,728
STAT.redo size 7,397,124 9,772,492 2,375,368
Run1 latches totaal versus run2 -- verschil en percentage
Run1 Run2 Verschil Pct
702,934 1,239,549 536,615 56.71%
PL/SQL-procedure is geslaagd.Regards,
Rob. -
Db function throws ORA-04067 Procedure does not exist error in forms
I have a db function that returns a value that I assign to a non-db item in Forms. The function compiles fine in the database, I've granted execute privileges to the forms user, and the form in which it's called compiles fine, but when I run the form and the trigger in which the function is called is fired, I get a ORA-04067 error, and Display_error doesn't show any additional information. My function syntax is as follows:
CREATE OR REPLACE FUNCTION f_method_in_prod(form_smi_field varchar2) RETURN VARCHAR2 IS
cur_smi varchar2(200) := form_smi_field;
cursor smi_lu is
select source_method_identifier from nemi_data.method
where cur_smi = source_method_identifier;
smi_var varchar2(200);
begin
open smi_lu;
fetch smi_lu into smi_var;
close smi_lu;
if smi_var is not null
then
RETURN 'yes';
end if;
END f_method_in_prod;
I've tried calling the function as function_name and as schema_name.function_name in the form and I get the error regardless of the format I use.
I'm using Forms 9.0.4
Any suggestions?
thanksI am not sure if this would cause the 04067 error, but your function does not return anything if smi_var is null. That is definitely a big problem.
Here is a function that should work better:
CREATE OR REPLACE FUNCTION f_method_in_prod(form_smi_field varchar2) RETURN VARCHAR2 IS
yes_no varchar2(3);
Begin
Begin
Select 'yes' into yes_no from dual where exists
(select null from nemi_data.method
where source_method_identifier = form_smi_field);
Exception when no_data_found then yes_no := 'no';
End;
Return yes_no;
END f_method_in_prod; -
10gLiteR3 publishing ORA-00942: table or view does not exist error
Hi All,
I am encountering table or view does not exist error while publishing using the api.
Below is the code:
try {
consolidatorManager.openConnection("MOBILEADMIN","PASSWORD", ADMIN_JDBC_URL);
mobileResourceManager = new MobileResourceManager("MOBILEADMIN","PASSWORD",ADMIN_JDBC_URL);
consolidatorManager.createPublicationItem(EXT_CONN, "RMT_TEST_TABLE" , "MOBILEADMIN","RMT_TEST_TABLE", "F", "SELECT * FROM MOBILEADMIN.RMT_TEST_TABLE", null, null);
consolidatorManager.addPublicationItem(mobileResourceManager.getPublication("/mobileApp"),"RMT_TEST_TABLE",null, null, "S", null, null);
} catch (Exception e) {
e.printStackTrace();
When I execute the above code it does not throw any exceptions but I see the below error in err.log. I,U,D triggers are getting created on the remote table, CMP, CFM, CVR,CLG tables are also created, I also see primary key for this table in VPKS. Publishing seems to be fine but I see the below error in err.log.
java.sql.SQLException: ORA-00942: table or view does not exist
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:180)
at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:208)
at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:543)
at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1451)
at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteDescribe(TTC7Protocol.java:651)
at oracle.jdbc.driver.OracleStatement.doExecuteQuery(OracleStatement.java:2117)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2331)
at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:422)
at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:366)
at oracle.lite.sync.Subscription.getVirtualTablePrimaryKey(Subscription.java:7522)
at oracle.lite.sync.Subscription.getTablePrimaryKey(Subscription.java:7365)
at oracle.lite.sync.Subscription.CreatePublicationItem(Subscription.java:2334)
at oracle.lite.sync.Subscription.CreatePublicationItem(Subscription.java:2157)
at oracle.lite.sync.Subscription.CreatePublicationItem(Subscription.java:2129)
at oracle.lite.sync.Subscription.CreatePublicationItem(Subscription.java:2108)
at oracle.lite.sync.Subscription.CreatePublicationItem(Subscription.java:2093)
at oracle.lite.sync.Subscription.CreatePublicationItem(Subscription.java:2079)
at oracle.lite.sync.ConsolidatorManager.createPublicationItem(ConsolidatorManager.java:1253)
I am not able to figure out what table it is looking for. Any ideas why this is happening?check the MGP compose process, is it also showing the error?
If it is them at some point in 10.2 Oracle introduced a 'feature' (ie: bug) that causes problems to the housekeeping routines when new versions of publication items are published
In 10.0 and early 10.2 when making changes to publication items VIEWS called CPV$.. were created to log the column list for each version of a publication item, and check if you are making changes when you publish. In the case of old versions, once all clients have synchronised and been moved to the latest version it tries to delete this view.
at some point the publish started creating TABLES instead of views (but using the same naming convention ie: CPV$..). This works fine as far as the logging of changes and old column lists, but the housekeeping called at the end of the publish and GP process still trieds to do a DROP VIEW and this causes the error.
The only way of clearing this i have found is to look at the log file to get the name of the object that it is trying to drop, set up a view script to create a dummy view with the list of columns in the table, drop the table and then create the view. It then gets dropped on the next MGP cycle and the error goes away
If the error is not showing up in the MGP process, only in the publish, and your changes appear to be publishing OK, then the problem is likely to be with a snapshot definition AFTER the change you have made - real pain to identify on re-publish - possibly missing schema name in the snapshot definition -
Import Error: ORA-01435 : User does not exist
Hi all,
I am importing a dump into 11g Database, the dump taken from Old Financial release 6 [EBIZ]
i given this command:
IMP FILE=EXPDUMP.DMP BUFFER=524288000 FULL=Y IGNORE=Y
Import user system and password given...
Once its started and getting error
+"ALTER USER "PERFUSER" QUOTA UNLIMITED ON "OTHERD""+
IMP-00003: ORACLE error 1918 encountered
ORA-01918: user 'PERFUSER' does not exist
IMP-00017: following statement failed with ORACLE error 1918:
+"ALTER USER "DUB_QUERY" QUOTA UNLIMITED ON "OTHERD""+
IMP-00003: ORACLE error 1918 encountered
ORA-01918: user 'DUB_QUERY' does not exist
IMP-00017: following statement failed with ORACLE error 1918:
+"ALTER USER "OEMV22" QUOTA UNLIMITED ON "OEM_REPOSITORY""+
IMP-00003: ORACLE error 1918 encountered
ORA-01918: user 'OEMV22' does not exist
IMP-00017: following statement failed with ORACLE error 1918:
+"ALTER USER "W03063_ITD" QUOTA UNLIMITED ON "TEMP" QUOTA UNLIMITED ON "OEM_R"+
+"EPOSITORY""+
IMP-00003: ORACLE error 1918 encountered
ORA-01918: user 'W03063_ITD' does not exist
+. importing APPS's objects into APPS+
IMP-00003: ORACLE error 1435 encountered
ORA-01435: user does not exist
+. importing DUB_QUERY's objects into DUB_QUERY+
IMP-00003: ORACLE error 1435 encountered
ORA-01435: user does not exist
+. importing SYSTEM's objects into SYSTEM+
+. importing APPLSYS's objects into APPLSYS+
+"ALTER SESSION SET CURRENT_SCHEMA= "APPLSYS""+
IMP-00003: ORACLE error 1435 encountered
ORA-01435: user does not exist
IMP-00000: Import terminated unsuccessfully
Kindly advice me what is the wrong,,
I have created all the data files same like Old Database. so while importing All the USERs will created, if its correct then why this "*ORA-01435 : User does not exist*" coming...
Regards
Paja
Edited by: Hameed on Jul 2, 2012 4:50 AMCreate tablespace :
select 'CREATE TABLESPACE '||TABLESPACE_NAME||' DATAFILE '||FILE_NAME||' SIZE '||BYTES||' autoextend on '||';'
from dba_data_files
order by tablespace_name;
Create User :
select ' CREATE USER '||USERNAME||' IDENTIFIED BY '||USERNAME||' DEFAULT TABLESPACE '||DEFAULT_TABLESPACE||' temporary tablespace ' ||' TEMP quota unlimited on '|| DEFAULT_TABLESPACE||';'
from dba_users
order by USERNAME;
Create Role
select 'CREATE ROLE ' || ROLE || ' ;'
from DBA_ROLES
order by ROLE
Grant Role :
select ' GRANT '|| GRANTED_ROLE || ' to ' || GRANTEE || ' ;'
from DBA_ROLE_PRIVS
order by GRANTED_ROLE
Br
osama
Edited by: Osama-mustafa on Jul 2, 2012 5:47 PM -
Why an "ORA-01006: bind variable does not exist" error when no dynamic SQL?
Hi all,
While running PL/SQL in SQL Developer 3.2.09, I got the following error after adding a section of code. Note that nothing I'm doing has anything to do with dynamic SQL (which is what 01006 is supposedly about).
Error report:
ORA-01006: bind variable does not exist
01006. 00000 - "bind variable does not exist"
*Cause:
*Action:
After commenting out the new chunk of code that caused the error, the error persisted.
After deleting the new code, the error went away.
What the heck!?!? If you have any ideas, please lay 'em on me.
Thanks so much,
Kim
P.S. It's a few hundred lines of code, so I didn't append it to this post and I don't see how to attach a file.Let's review a few facts:
1. You post a question in the sql developer forum that has no apparent relation to sql developer. You could confirm this by doing the test using sql*plus or some other tool.
2. You provide NO information about what database you are even using. The only clue is an ORA -xxx message that means SOME version of Oracle is involved.
3. You provide NO information about what the four digit version of Oracle DB is being used.
4. You provide NO information about what the code in general or what that specific section of the code is even doing. The code could be doing literally anything that Oracle is capable of doing.
That's a bit like calling a mechanic you don't know, telling them your car is making a funny noise and asking them what the problem with your car is.
>
While running PL/SQL in SQL Developer 3.2.09, I got the following error after adding a section of code. Note that nothing I'm doing has anything to do with dynamic SQL (which is what 01006 is supposedly about).
Error report:
ORA-01006: bind variable does not exist
01006. 00000 - "bind variable does not exist"
*Cause:
*Action:
The error gives no indication of where the error occurred in the code.
>
Your first clue that your troubleshooting method is seriously flawed is when you make statements that aren't supported by any evidence at all but appear to be nothing but your opinion.
Your second clue is when those statements appear to directly contradict what Oracle is telling you.
I'm talking about these two statements you make; which you state as if they were universal truths
>
nothing I'm doing has anything to do with dynamic SQL
(which is what 01006 is supposedly about).
>
If thoe were true then your 'unstated' conclusion appears to be that Oracle is wrong in saying 'bind variable does not exist'
Sorry - but I would place my money on Oracle.
I'm sure the above may sound harsh - it is intended to be. My four major rules (there are more) when troubleshooting Oracle problems.
1. Assume that Oracle is CORRECT when it tells you there is a problem.
2. Assume that you are WRONG if your opinion conflicts with what Oracle is telling you - see rule #1.
3. Don't make ANY other assumptions. You can form hypotheses but don't state them as facts until they are proven.
4. Your 'opinion' is only useful to the extent that it can help you form meaningful hypotheses - see rule #3.
>
To reiterate, there is no dynamic SQL in the code.
>
To reiterate - if, as you state, that error relates to dynamic SQL and bind variables then it can not be disputed that:
ORACLE DOESN'T AGREE WITH YOU!
So let's try it my way and hypothesize that Oracle is correct (see rule #1 above).
Then by definition this statement by Oracle is correct
>
ORA-01006: bind variable does not exist
>
And that should immediately raise this question:
1. where might there be a bind variable that does not exist?
which leads to a prerequisite question:
2. where are ALL of the bind variables that might be being used?
Question #2 is where you need to start your search. Here are at least five possibilities (there are more)
1. your code - this should be easiest to check and you state that your 'anonymous' block does not have any.
2. a table trigger - triggers that use the :NEW, :OLD or :PARENT pseudocolumns. Those psuedocolumns are BIND variables and the trigger code that uses them is, by definition, dynamic sql.
3. a pl/sql package/function/procedure - any of these might be being called from trigger code or a view that is involved in the transaction. Any of these could take a parameter and/or use bind variables and cause your problem if that bind variable does 'not exist'.
4. a functional index - can also trigger code from #3 above
5. an audit trigger that logs the audit activity that your user or your code is performing. This code could be trying to use a SYS_CONTEXT environment variable that has not been created and cause a 'bind variable does not exist' error.
See rule #1 - Oracle is CORRECT. Until you have identified and examined ALL of the code (not just your anonymous block) being executed and ruled it out you should continue with the hypotheses that Oracle is CORRECT.
In the (extremely) unlikely event that you can show that Oracle is NOT correct you should file a SOR with Oracle. -
Client sync failure: "sequence does not exist"
Hello everyone,
I could use some help on this.Using 10.3 mobile server and a mobile6 client (using the official mobile6 patch). After some syncs, a mobile client gets the error "sequence does not exist", and the replication fails.
When looking at the server log, after the client has successfully uploaded its data, a sequence "M$8232031$M" is created on the server just before the client can download its new data. Then, the server tries to get the nextval from that sequence - and the sequence is not there !!
What happened, what can cause this behaviour ?
Here is an excerpt from the server log with the "faulty" client sync :
clog: Subscription.prepStatement: ALL: SQL: INSERT INTO MOBILEADMIN.C$ALL_MANGLED_NAMES(CLIENTID,ORIGINAL_NAME,MANGLED_NAME) VALUES(?,?,?):
Object: @1da9a66
clog: Subscription.execDirectLogged: FINEST: GENERAL: Created M$8232031$M
clog: Subscription.mangleOS: ALL: FUNCTION: Exiting
clog: Subscription.pstmClose: ALL: FUNCTION: Entering
clog: Subscription.pstmClose: FINEST: GENERAL: pstmt::close
clog: Subscription.pstmClose: ALL: FUNCTION: Exiting
clog: Subscription.mangle: FINEST: GENERAL: conn user =MOBILEADMIN, e[0]=MOBILEADMIN
clog: Subscription.mangle: ALL: FUNCTION: Exiting: user.equals(e[0])
clog: Consolidator.DQ: ALL: FUNCTION: Invoking
clog: O8Server.advanceSequence: ALL: FUNCTION: Invoking
clog: Subscription.execSelectDirect: ALL: FUNCTION: Entering
clog: Subscription.execSelectDirect: ALL: SQL: exec:::
Object: SELECT "M$8232031$M".NEXTVAL FROM DUAL
clog: HeliosSession.startSession: FINEST: GENERAL: Decrement client download 0
clog: HeliosSession.clientDownload: ALL: FUNCTION: Invoking
clog: HeliosSession.startSession: MANDATORY: ALL:
Exception: java.sql.SQLException: ORA-02289: Sequence ist nicht vorhanden.
ORA-02289: Sequence ist nicht vorhanden.
clog: HeliosSession.sendE, s=ORA-02289: Sequence ist nicht vorhanden.
: ALL: FUNCTION: Entering
clog: HeliosSession.sendCompress: ALL: FUNCTION: Entering
clog: HeliosSession.sendCompress: FINEST: GENERAL: deflated total in,out is 52,2 bytes
clog: HeliosSession.sendCompress: FINEST: GENERAL: Sending byte array of 2 bytes
clog: HeliosSession.sendConv: ALL: FUNCTION: Invoking
clog: HeliosSession.initConvOS: ALL: FUNCTION: Invoking
clog: Client.send: ALL: FUNCTION: Entering
clog: Client.send: ALL: FUNCTION: Exiting
clog: ConvAtOutputStream.write: ALL: FUNCTION: Entering
clog: ConvAtOutputStream.write: FINEST: GENERAL: exlen:16
clog: ConvAtOutputStream.write: ALL: FUNCTION: Exiting
clog: ConvAtOutputStream.write: ALL: FUNCTION: Entering
clog: ConvAtOutputStream.write: FINEST: GENERAL: exlen:8
clog: ConvAtOutputStream.write: ALL: FUNCTION: Exiting
clog: HeliosSession.sendCompress: ALL: FUNCTION: Exiting
clog: HeliosSession.sendE: ALL: FUNCTION: Exiting
clog: HeliosSession.sendCompress: ALL: FUNCTION: Entering
clog: HeliosSession.sendCompress: FINEST: GENERAL: Sending byte array of 60 bytes
clog: HeliosSession.sendConv: ALL: FUNCTION: Invoking
clog: ConvAtOutputStream.write: ALL: FUNCTION: Entering
clog: ConvAtOutputStream.write: FINEST: GENERAL: exlen:6
clog: ConvAtOutputStream.xop: ALL: FUNCTION: Invoking
clog: Client.send: ALL: FUNCTION: Entering
clog: Client.send: ALL: FUNCTION: Exiting
clog: ConvAtOutputStream.xop: ALL: FUNCTION: Invoking
clog: Client.send: ALL: FUNCTION: Entering
clog: Client.send: ALL: FUNCTION: Exiting
clog: ConvAtOutputStream.xop: ALL: FUNCTION: Invoking
clog: Client.send: ALL: FUNCTION: Entering
clog: Client.send: ALL: FUNCTION: Exiting
clog: ConvAtOutputStream.xop: ALL: FUNCTION: Invoking
clog: Client.send: ALL: FUNCTION: Entering
clog: Client.send: ALL: FUNCTION: Exiting
clog: ConvAtOutputStream.write: ALL: FUNCTION: Exiting
clog: HeliosSession.sendConv: ALL: FUNCTION: Invoking
clog: ConvAtOutputStream.flush: ALL: FUNCTION: Entering
clog: ConvAtOutputStream.flush: FINEST: GENERAL: tail = 6
clog: ConvAtOutputStream.xop: ALL: FUNCTION: Invoking
clog: Client.send: ALL: FUNCTION: Entering
clog: Client.send: ALL: FUNCTION: Exiting
clog: ConvAtOutputStream.flush: FINEST: GENERAL: Sent to pipe 16 bytes
clog: HeliosSession.sendCompress: ALL: FUNCTION: Exiting
clog: Client.flush: ALL: FUNCTION: Entering
clog: Client.flush: ALL: RESUME: Data length: 86
clog: Client.flush: ALL: FUNCTION: Exiting
clog: HeliosSession.startSession: FINEST: GENERAL: disconnecting jdbc
clog: JupConnection.destroy: ALL: FUNCTION: Entering
clog: JupConnection.destroy: ALL: FUNCTION: Exiting
clog: HeliosSession.startSession: ALL: FUNCTION: Exiting
clog: Client.startSync: MANDATORY: ALL:
Exception: java.sql.SQLException: ORA-02289: Sequence ist nicht vorhanden.
ORA-02289: Sequence ist nicht vorhanden.
clog: HeliosSession.getSessionType: ALL: FUNCTION: Invoking
clog: Server.newConnection (): ALL: FUNCTION: InvokingCheck your err.log after you create the users to see if there is any issues.
I have had various issues with users Data Subsetting not being set. I find this happens when there are many blocking locks and users are being drop, created, password change, etc. Blocking locks are part of the nature of the application, the only way to really combat that is to do some performance tuning on the MGP and the SYNC.
Here is how I create my user:
try {
rm.createUser(USERNAME, PASSWORD, DISPLAY_NAME, "U");
rm.setUserAccess("/app", USERNAME, true);
rm.setTemplateVariable("/app", USERNAME, "USER_ID", PARAMETER);
rm.commitTransaction();
} catch (ResException res) {
rm.rollbackTransaction();
res.printStackTrace();
} -
"ORA-21700: object does not exist or is marked for delete" select from ADT
Posted this in OLAP section as well, but since this is Object technology, I thought I would repeat it here. Sorry about the duplication.
BTW, I'm using Oracle9i 9.2.0.4.1.
I'm trying to create a script that can automate the process of generating abstract data types for use in an OLAP_TABLE function. I'm following the examples in the documentation. Everything runs great the FIRST time I run my script, but when I drop my types and re-create them, when I run the next SELECT statement against the OLAP_TABLE function, I get:
ERROR at line 1:
ORA-21700: object does not exist or is marked for delete
My script drops the ADTs before creating, but somehow they are not REALLY being dropped.
SET ECHO ON
SET SERVEROUT ON
DROP TYPE ts_table_6;
DROP TYPE ts_row6;
CREATE TYPE ts_row6 AS OBJECT(
CONJ2002 VARCHAR2(400),
CONJ2002_DATA number(16),
PERIOD VARCHAR2(10),
PERIOD_NAME VARCHAR2(20));
CREATE TYPE ts_table_6 AS TABLE OF ts_row6;
SELECT CONJ2002, period, period_name, conj2002_data FROM TABLE(OLAP_TABLE(
'REFVLMTA DURATION QUERY',
'ts_table_6',
'limit CONJ2002 to first 3',
'MEASURE CONJ2002_DATA from CONJ2002.DATA
DIMENSION CONJ2002 from CONJ2002
DIMENSION PERIOD from PERIOD WITH
ATTRIBUTE PERIOD_NAME from period.name'));
Again, it works the first time, but not the second time. I need to bump up the ADT names to ts_row7 and ts_table_7. SQL Plus says the types are being dropped.
Any ideas?
Dan Vlamis [email protected]Hi Dan
What append if you do a connect between the DROP and the CREATE statements?
Chris -
ORA-01435: user does not exist when using imp utility
I installed Oracle 8.1.7.0.0 successfully on WINDOWS 2000 and created a database TEST using DBCA. Then I used a script to creat a tablespace and a user in TEST databse. I could use the imp utility to import the data (a dmp file) to the TEST database without any problem. But after I applied a patch to bring up the version to Oracle 8.1.7.4.1, I got the following error when I tried to use the imp utility again to import the data (a dmp file) to the TEST database.
IMP-00003: ORACLE error 1435 encountered
ORA-01435: user does not exist
IMP-00000: Import terminated unsuccessfully
I checked that I created the same user test (as it is in dmp file I wanted to import) on TEST, and I could login to TEST using:
sqlplus test/test@TEST
The command I used is:
imp system/password@TEST file=test.dmp full=y log=importTEST.TEST.tmp
I also tried to use the following command:
imp system/password@TEST file=test.dmp fromuser=test touser=test log=importTEST.TEST.tmp
and got the same error as before.
Anyone has any clues what could go wrong? The only difference for me to import the data on TEST is that the
previous successful import was done in Oracle 8.1.7.0.0.
Is it possible that I missed something during the applying of the patch 8.1.7.4.1?
Thanks, and your help is greatly appreciated.
JaneTher is a set of instruction to be followed after installing the patch set 8.1.7.4.1 after running it thru OUI.They are as follows. Please complete these steps and u should not have problems any more.
When applying this patchset on Windows NT and Windows 2000, you must log onto the system as a user with Administrative privileges (e.g., as a user which is a member of the local Administrators group).
1.Disabling system triggers.
Before performing the next step, you must first set SYSTEMTRIG_ENABLED = FALSE in the initialization parameter file. To do this add the following line to your init<sid>.ora file and restart the database (see Note 149948.1 in Metalink for more information on this issue).
systemtrig_enabled=false
2.Invoke SQL*Plus (sqlplus), connect as internal and run the following:
select * from duc$ where PACK='JIS$INTERCEPTOR$' ;
If no rows were returned go to the next step. If a row was returned delete it using the following:
delete from duc$ where PACK='JIS$INTERCEPTOR$' ;
commit;
3.Invoke SQL*Plus (sqlplus), connect as internal and run the following SQL scripts with event 10520 set. NOTE: This event is not intended for regular database operation and when turned on below by the 'ALTER SESSION' command will automatically be turned off by the subsequent 'CONNECT' command.
ALTER SESSION SET EVENTS '10520 TRACE NAME CONTEXT FOREVER, LEVEL 10';
?/rdbms/admin/catalog.sql
?/rdbms/admin/catproc.sql
?/rdbms/admin/catrep.sql (This only needs to be run if you are using symmetric/advanced replication. This is not necessary for sites using dblinks and read-only snapshots if symmetric/advanced replication is not installed)
CONNECT / AS SYSDBA;
update obj$ set status=5 where type#=29 and owner#!=0;
commit;
4.You can ignore this step if you have already executed it as part of a previous 8.1.7 patch set install.
If Java has previously been loaded into the database, invoke SQL*Plus (sqlplus), connect as internal and run the following SQL DDL command(* Note:If Java has not previously been loaded into the database, skip this step).:
SQL> create or replace java system
2 /
(Note that the / (slash) is important to ensure the execution of the command).
To ensure the correct installation of the XDK in the database run the following 2 scripts (Bug 2115227):
$ORACLE_HOME/oracore/admin/initxml.sql
$ORACLE_HOME/rdbms/admin/catxsu.sql
* To determine whether Java has previously been loaded into the database:
invoke SQL*Plus (sqlplus), connect as internal and run the following:
SQL> select count(*) from all_objects where object_type like 'JAVA%';
Java is installed if you get a non zero result returned from the query.
5.You can ignore this step if you have already executed it as part of a previous 8.1.7 patch set install:
If Java has previously been loaded into the database, invoke SQL*Plus (sqlplus), connect as internal and run the following scripts which are located in $ORACLE_HOME/javavm/install ( Note: If Java has not previously been loaded into the database, you can skip this step):
load_jis.sql
jisja.sql
initjsp.sql
jspja.sql
Notes:
When running the $ORACLE_HOME/javavm/install/jisja.sql script the following error may be reported and can be ignored:
call jis_exit_java_session(0)
ERROR at line 1:
ORA-29515: exit called from Java code with status 0
Bug 1459233 was filed against this problem which is fixed in 9i.
6.If you deleted a row from duc$ in step 8 then reinsert it again. Invoke SQL*Plus (sqlplus), connect as internal and run the following SQL:
insert into duc$ (OWNER, PACK, PROC, FIELD1, OPERATION#, SEQ) values ('SYS', 'JIS$INTERCEPTOR$', 'USER_DROPPED', 0, 1, 1);
commit;
7.Enabling system triggers.
You must either remove SYSTEMTRIG_ENABLED from the initialization parameter file or explicitly set it to TRUE before attempting any other patch set post-install steps. Restart the database.
8.This step is optional - it will recompile all invalid PL/SQL packages now rather than when accessed for the first time - you can also use utlrcmp.sql to parallelize this. Invoke SQL*Plus (sqlplus), connect as internal and run the following SQL script:
?/rdbms/admin/utlrp.sql
9.Execute the following steps only if you have installed Oracle interMedia Text in the database you are attempting to modify:
If you have not previously unlocked the ctxsys account and supplied a password for that account, you need to do so. (If you have needed to use Oracle Text in any way prior to applying the patchset, you will have already performed this step, and you can skip this.) Do so by issuing the following statement:
ALTER USER ctxsys IDENTIFIED BY <passwd> ACCOUNT UNLOCK;
If you have already installed 8.1.7.2 or 8.1.7.3, go directly to step 7 below.
If you have already installed 8.1.7.1, go directly to step 5 below.
CONNECT ctxsys/<passwd>;
@?/ctx/admin/upgrade/u0801071.sql
CONNECT ctxsys/<passwd>;
@?/ctx/admin/upgrade/u0801072.sql
CONNECT / AS SYSDBA;
@?/ctx/admin/upgrade/s0801074.sql
CONNECT ctxsys/<passwd>
@?/ctx/admin/dr0pkh.sql
@?/ctx/admin/dr0plb.sql
@?/ctx/admin/dr0type.plb
@?/ctx/admin/dr0typec.plb
9.You can ignore this step if you have already executed it as part of a previous 8.1.7 patch set install:
The installation of this patch set fixes a potential security hole in the XSQL Servlet - see here for more detail. The patchset installation does not, however, modify any of the Oracle HTTP Server configuration files to reflect changes to the XSQL Servlet installation. If you have previously installed the Oracle HTTP Server, you will need to update one of the configuration files manually after the patchset installation is complete. If you do not do so, the XSQL Servlet may not work in the context of the Oracle HTTP Server after the patchset is installed. To update your Oracle HTTP Server configuration, perform the following steps:
1) Edit the file: $ORACLE_HOME/Apache/Jserv/conf/jserv.properties
2) Search for the string: "XSQLConfig.xml File location"
3) Modify the parameter wrapper.classpath on the line immediately following the above string to read: $ORACLE_HOME/oracore/admin
4) Save the file.
10.You can ignore this step if you have already executed it as part of a previous 8.1.7 patch set install:
The installation of this patch set fixes a potential security hole in the PL/SQL XML parser - see here for more detail. To load the new XML parser in to the database, run the following script as user SYS:
? /xdk/plsql/parser/bin/load.sql
11.If you are using the RMAN catalog then upgrade it as follows:
rman catalog <user/passwd@alias>
upgrade catalog;
upgrade catalog;
The post install actions are now complete and the database is now ready for use.
Maybe you are looking for
-
I was clearing off some photos I rarely use into a folder I was going to store on my ext drive. Afterwards I realized I had put some on there that I needed. When I reimported them they went to the end of the line rather than where they originally wer
-
Itunes Crashed when uploading library To Classic IPOD
Not too sure if anyone else is having this problem.But i have updated the itunes and ipod software, and have reset it and also restored it numerous times. But every time i connect my ipod and either manually sync my music or whether it does it automa
-
How can i find out what network an Iphone is locked to without testing every network sim?
-
How to sent a message or notification to PCs on LAN using Powershell
i want to sent a message to list of PCs on LAN, how to do that, thanhk u
-
Can I change the order of playlists in the sidebar?
Is there not a way to do this? I kind of wanted to move some playlists up further, but it appears it's sorted alphabetically. Am I just going to have to put A) *playlist name*, B) *playlist name*?