Must Reparse Cursor Error on WL5.1Sp9
We are seeing a Must Reparse Cursor error on SQL code that prepares a statement
executes it once and closes it right away. This problem occurred in WL6.0 as well,
but Joe fixed it by sending us a patch that turned off caching of prepared statements.
This problem does not occur in WL5.1sp8. Did the prepared statement caching feature
get back ported on to the 5.1sp9 release as well, and if so is there a way to
bypass the caching the way it was done for WL6.0.
Any help is appreciated - we are close to a shipping deadline so it would help
if we could get a response quickly..
krishna
Hi Krishna,
Could you apply this patch and let me know if it helps?
Put it as the first thing in your weblogic.classpath.
Regards,
Slava Imeshev
"Krishna Kumar" <[email protected]> wrote in message
news:3b65dc31$[email protected]..
>
We are seeing a Must Reparse Cursor error on SQL code that prepares astatement
executes it once and closes it right away. This problem occurred in WL6.0as well,
but Joe fixed it by sending us a patch that turned off caching of preparedstatements.
This problem does not occur in WL5.1sp8. Did the prepared statementcaching feature
get back ported on to the 5.1sp9 release as well, and if so is there a wayto
bypass the caching the way it was done for WL6.0.
Any help is appreciated - we are close to a shipping deadline so it wouldhelp
if we could get a response quickly..
krishna
[CR047274_51.jar]
Similar Messages
-
Cursor Error in trigger - Statement Ignored/identifier must be declared PLS
I have been asked to implement a trigger and believe I have the code complete but am getting a final error on the compile. I have been running in circles for a day trying to resolve my issue. I have no PL/SQL knowlege so have been pulling from a book and google. I have three Cursors defined and the third compiles fine, the first two give the below error though I can't see a significant difference between the three. I can't help but think it is something stupid I am not seeing but I am at a loss.
If I comment out the reference to the cursor it will compile with the cursor definition but as soon as I add the Open statement the errors below appear.
Any help would be greatly appreciated as my head is getting sore.
Thanks
Mike
Error(30,13): PL/SQL: Statement ignored
Error(30,20): PLS-00201: identifier 'CURSORGETFROMDISTMAKRERS' must be declared
Error(51,13): PL/SQL: Statement ignored
Error(51,20): PLS-00201: identifier 'CURSORGETTODISTMAKRERS' must be declared
-- Table I am writing to
create table IMSV7.CTRANSWODISTMARK (
WORKORDERKEY INTEGER,
DISTMARKFROM NUMBER (9,4),
DISTMARKFROMATTRIBUTE VARCHAR (10),
DISTMARKTO NUMBER (9,4),
DISTMARKTOATTRIBUTE VARCHAR (10)
-- Excerpt from the HISTORY table I am placing the trigger against
COMPKEY NUMBER (9,0)
DISTFROMFT FLOAT
DISTTOFT FLOAT
HISTKEY NUMBER (9,0)
-- Trigger code
CREATE OR REPLACE TRIGGER MaintainCTRANSWODISTMARK
AFTER INSERT or UPDATE of DISTFROMFT, DISTTOFT ON IMSV7.HISTORY
REFERENCING NEW as NewWO
FOR EACH ROW
BEGIN
DECLARE
-- Declare cursors
CURSOR CursorGetFromDistMarkers (WOCompKey IN NUMBER, WODistFromFT IN FLOAT) IS
SELECT ATTRCODE, DISTFROMFT, MARKERFROM from RWATTRDF DF, RWATTR A
where WOCompkey = A.COMPKEY AND DF.ATTRKEY = A.ATTRKEY and DF.ATTRTYPE = 'DISTMARK'
and WODistFromFT >= DISTFROMFT and WODistFromFT <= DISTTOFT
order by A.EFFDATE DESC, DISTFROMFT DESC;
FromDistanceMarker CursorGetFromDistMarkers%ROWTYPE;
CURSOR CursorGetToDistMarkers (WOCompKey IN NUMBER, WODistToFT IN FLOAT) IS
SELECT ATTRCODE, DISTFROMFT, MARKERFROM from RWATTRDF DF, RWATTR A
where WOCompkey = A.COMPKEY AND DF.ATTRKEY = A.ATTRKEY and DF.ATTRTYPE = 'DISTMARK'
and WODistToFT >= DISTFROMFT and WODistToFT <= DISTTOFT
order by A.EFFDATE DESC, DISTFROMFT DESC;
ToDistanceMarker CursorGetToDistMarkers%ROWTYPE;
CURSOR CursorGetCTRANSWODistMark (WOHistKey IN NUMBER) IS
SELECT WORKORDERKEY from CTRANSWODISTMARK
where WORKORDERKEY = WOHistKey;
CTRANSWODistMark CursorGetCTRANSWODistMark%ROWTYPE;
varDistmarkFrom NUMBER;
varDistmarkFromAttribute VARCHAR2(10);
varDistmarkTo NUMBER;
varDistmarkToAttribute VARCHAR2(10);
BEGIN
-- Process From measurement
IF NOT CursorGetFromDistMakrers%ISOPEN
THEN
OPEN CursorGetFromDistMarkers(:NewWO.COMPKEY, :NewWO.DISTFROMFT);
END IF;
FETCH CursorGetFromDistMarkers INTO FromDistanceMarker;
IF CursorGetFromDistMarkers%NOTFOUND
THEN
-- No distance markers found, use MILES
varDistmarkFrom := :NewWO.DISTFROMFT / 5280;
varDistmarkFromAttribute := 'MILES';
ELSE
-- Found a distance marker, convert to its units and use those
-- Distance is the Marker start distance plus the offset from that start of the marker
varDistmarkFrom := FromDistanceMarker.MARKERFROM + :NewWO.DISTFROMFT - FromDistanceMarker.DISTFROMFT;
varDistmarkFromAttribute := FromDistanceMarker.ATTRCODE;
END IF;
CLOSE CursorGetFromDistMarkers;
-- Process To measurement
IF NOT CursorGetToDistMakrers%ISOPEN
THEN
OPEN CursorGetToDistMarkers(:NewWO.COMPKEY, :NewWO.DISTTOFT);
END IF;
FETCH CursorGetToDistMarkers INTO ToDistanceMarker;
IF CursorGetToDistMarkers%NOTFOUND
THEN
-- No distance markers found, use MILES
varDistmarkTo := :NewWO.DISTTOFT / 5280;
varDistmarkToAttribute := 'MILES';
ELSE
-- Found a distance marker, convert to its units and use those
-- Distance is the Marker start distance plus the offset from that start of the marker
varDistmarkTo := ToDistanceMarker.MARKERFROM + :NewWO.DISTTOFT - ToDistanceMarker.DISTFROMFT;
varDistmarkToAttribute := ToDistanceMarker.ATTRCODE;
END IF;
CLOSE CursorGetToDistMarkers;
-- Check for existing record to know if we should add or update
IF NOT CursorGetCTRANSWODistMark%ISOPEN
THEN
OPEN CursorGetCTRANSWODistMark(:NewWO.HISTKEY);
END IF;
FETCH CursorGetCTRANSWODistMark INTO CTRANSWODistMark;
IF CursorGetCTRANSWODistMark%NOTFOUND
THEN
-- Record does not exist, add one
Insert into CTRANSWODISTMARK (WORKORDERKEY, DISTMARKFROM, DISTMARKFROMATTRIBUTE, DISTMARKTO, DISTMARKTOATTRIBUTE)
values (:NewWO.HISTKEY, varDistmarkFrom, varDistmarkFromAttribute, varDistmarkTo, varDistmarkToAttribute);
ELSE
-- Existing record, update it
Update CTRANSWODISTMARK set DISTMARKFROM = varDistmarkFrom, DISTMARKFROMATTRIBUTE = varDistmarkFromAttribute,
DISTMARKTO = varDistmarkTo, DISTMARKTOATTRIBUTE = varDistmarkToAttribute
Where WORKORDERKEY = :NewWO.HISTKEY;
END IF;
END;
END;
run;
show errors trigger MaintainCTRANSWODISTMARK;the cursor is mispelled
IF NOT CursorGetFromDistMakrers%ISOPENchange it to:
IF NOT CursorGetFromDistMarkers%ISOPEN -
"Invalid Cursor" Error in Form
Hi,
I wrote a procedure that take a REF CURSOR as an IN OUT argument. This procedure does an "OPEN cursor FOR qry" with a dynamic query:
OPEN l_cursor FOR
'SELECT A '||
'FROM B '||
'WHERE C = :l_var'
USING myVar;After calling the procedure, I do a LOOP with FETCH.
It works well when I use it in SQL*Plus with DBMS_OUTPUT but it returns a "ORA-01001 invalid cursor" error in Forms.
Any help is welcome!
Regards,
Olivier.I found a solution on Metalink:
Note:170881.1
Note: 1007395.6
Olivier. -
Hi All,
All coments appreciated regarding thiis issue.
I have a 2010 27' i7 2.93Ghz iMac with 8Gb ram, 2Tb Seagate, and 256 Samsung SSD.
I am running 10.6.8 with all updates on the 2Tb Seagate (has BC 3.04), and 10.7.1 on the Samsung (has BC 4.0).
I have tried over a dozen times to install Win 7 (both a 32 bit Professional edition and a 64 bit Ultimate edition) on BC partitions on both drives. These have been all on separate occasions of course.
All installs result in what appears to be a successful install, but when the machine reboots to launch Win 7 for the first time, I ALWAYS get a black screen with a blinking cursor error (BSBCE).
This is not the 2009 video card driver issue problem reported so widely and referred to in the Apple article TS3173. I had that model previously and the way around that was to connect a second monitor/LCD for the installation.
No this is a new and separate issue.
And I am no nubie. I have used IT for over 25 years and teach networking courses in the Win and Mac environments.
The problem appears to be in a corrupt boot loader install.
I have used both WIn 7 install disks to do a repair each time. The repair says it is successful but after rebooting all I get is the black screen and flashing cursor, with no keyboard response. I have used both Bluetooth keyboards and USB keyboards. Nothing seems to make a difference re getting WIn 7 to boot after the install on either drive.
I have also used the Bootrec commands in the command window. They all return a successful outcome but when rebooting I see the ever familar BSBCE.
Now,,,,,here is the real puzzle. I copied my previous Win 7 Ultimate install using Winclone before I sold my older 27' iMac.
If I restore that install to the 2010 iMac Win 7 boots fine!
So some error is happening on my current machine when the bootloader/bootmanager is being written to the BC partition.
The problem is there with the BC on both 10.6 and 10.7, and these are different versions of BC!
Now to further complicate the problem, I manage 12X 2011 21.5' iMacs in a lab at work. Win 7 Professional 32bit installed on these machines just as it should (same disks that produces the black screen flashing cursor).
I have read that some people thing it is a Boot Rom version issue, and there may be some substance to this as WIN 7 installs so easily on the 2011 iMacs in my lab.
I called Applecare about this and went through the procedures outlined above. The guy was very helpful and sympathetic but he had no answer to the problem. His suggestion was to pull the SSD out and do it again with only one drive. As the machine can ship from Apple with both of these drives I really do doubt that pulling the SSD would make a difference.
Mac OS 10.6 and 10.7 work fine, no problems on both drives, so I don't think it is a drive issue.
OK Mac gurus...over to you.I have a bookmark for iMac w/ SSD and hard drive.
There is also the 'req'd reading' in http://www.apple.com/support/bootcamp
with one article on Black screen w/ iMac 2010. -
Help:Oracle 8.1.7 JDriver with WL5.1sp9
Hi,
We recently moved from ORacle 8.0.6 to 8.1.7 and we use
WL5.1SP9. My team recently facing a strange problem with JDriver for
8.1.7 . There has been lott of inconsitency in the data returned by the
Driver. Specifically we face problem in using Outer joins. We ran the
same outer join query in Oracle 8.0.6 and everything was perfect but
the same give some problems like returning some value for a Null Column
like returning a value of some other row. The value that's returned for
Null Column is also not consitent every time we run the query.
Did any one face same, similar kinda of problems?? if so is there any
solution???
NOTE: The Query is working perfectly from SQL Plus.
Any Help Appreiciated...
Thanks,
Venki..Seems the problem is with Weblogic JDriver.(Type 2). We tried with Oracle's
Driver Type 2 it's working fine..
we r still testing.. on these two driver before registering a complaint with
BEA..
Venki..
Slava Imeshev wrote:
Hi hongmei,
Have you tried Oracle 8.1.7 thin driver? Proved to be pretty
stable.
Regards,
Slava Imeshev
"hongmei Dong" <[email protected]> wrote in message
news:3b68ab67$[email protected]..
Hi Venki,
We are experiencing the same issue, and it only happens on our Solarisplatform.
I've logged a support call to Weblogic. It's a real critical issue in ourcase,
If you found out anything, please let me know.
Thanks.
-Hongmei
"krishna" <[email protected]> wrote:
Hi Venki,
Basically Type 2 driver of weblogic for Oracle is nothing but a thin
wrapper around the client libraries of Oracle.
I would suggest you to check this with Oracle's Type 2 Driver.
If its working fine then there is some probelm with Weblogic's Type 2
driver.
If not seems there is some problem with Client libaries of Oracle 8.1.7.
If you don't want to try with Oracle's Type2, please open up a case with
support
and provide a test case so that it can be fixed.
Thanks,
Krishna
"Venki Seshaadri" <[email protected]> wrote in message
news:[email protected]..
Hi,
We recently moved from ORacle 8.0.6 to 8.1.7 and we use
WL5.1SP9. My team recently facing a strange problem with JDriverfor
8.1.7 . There has been lott of inconsitency in the data returned bythe
Driver. Specifically we face problem in using Outer joins. We ranthe
same outer join query in Oracle 8.0.6 and everything was perfect but
the same give some problems like returning some value for a Null Column
like returning a value of some other row. The value that's returnedfor
Null Column is also not consitent every time we run the query.
Did any one face same, similar kinda of problems?? if so is there any
solution???
NOTE: The Query is working perfectly from SQL Plus.
Any Help Appreiciated...
Thanks,
Venki.. -
Invalid cursor error in procedure
i am writing a procedure in which i have make use of cursor........it is giving me error INVALID CURSOR
on running
i have used this cursor with WITH CLAUSE....
when i am executing or running this procedure this giving me invalid cursor error
create or replace
procedure USP_UPDATEDRUGORDERDTL
v_pServiceid IN NUMBER DEFAULT NULL ,
v_pServRendered IN NUMBER DEFAULT NULL ,
v_pSchDateTime IN DATE DEFAULT NULL ,
v_pOrdQty IN FLOAT DEFAULT NULL ,
v_billingclassid IN NUMBER DEFAULT NULL ,
v_pOrdID IN NUMBER DEFAULT NULL ,
v_UpdatedBy IN NUMBER DEFAULT NULL ,
v_prender IN NUMBER DEFAULT 0 ,
v_pInsertedByUserID IN VARCHAR2 DEFAULT NULL ,
v_pInsertedON IN DATE DEFAULT NULL ,
v_pDrugID IN NUMBER DEFAULT 0 ,
v_pRate IN FLOAT DEFAULT 0 ,
v_pBatchId IN NUMBER DEFAULT 0 ,
v_OrderSource IN VARCHAR2 DEFAULT NULL ,
v_pInsertedMacID IN VARCHAR2 DEFAULT NULL ,
v_pInsertedIPAddress IN VARCHAR2 DEFAULT NULL ,
v_pOldOrdID IN NUMBER DEFAULT NULL,
v_plocid in char DEFAULT NULL
AS
vr_pConsumptionID NUMBER(10,0);
vr_pSavedQty NUMBER(10,3);
vr_pReturnQty NUMBER(10,3);
vr_Qty NUMBER(10,3);
begin
vr_pSavedQty := 0;
vr_pReturnQty := v_pOrdQty;
declare
cursor ordDtl_cur is -----cursor declaration
with --- with clause used with cursor
Q1 AS
Select NVL(ConsumptionID,0) As ConsumptionID,Sum(OrdQty) As OrdQty,
OrdID,DrugID,BatchID, locid from Orderdtl
Where OrdID = v_pOldOrdID and DrugID = v_pDrugID And BatchID = v_pBatchID and NVL(Cancelled,0) = 0
Group By OrdID,DrugID,BatchID,ConsumptionID
Order By ConsumptionID asc
Q2 AS
SELECT NVL(OrderDtl.ConsumptionID,0) As ConsumptionID,(SUM(OrderDtl.OrdQty)) As OrdQty,
IvPatientIssueReturnDtl.OrderID as OrdID,OrderDtl.DrugID,OrderDtl.BatchID,OrderDtl.locid
FROM OrderDtl INNER JOIN
IvPatientIssueReturnDtl ON OrderDtl.OrdID = IvPatientIssueReturnDtl.NewOrderId AND
OrderDtl.DrugId = IvPatientIssueReturnDtl.ItemId AND OrderDtl.BatchId = IvPatientIssueReturnDtl.BatchId
WHERE (OrderDtl.BatchId = v_pBatchID) AND (IvPatientIssueReturnDtl.OrderId = v_pOldOrdID)
AND (OrderDtl.DrugID = v_pDrugID) and NVL(OrderDtl.Cancelled,0) = 0
Group By IvPatientIssueReturnDtl.OrderID,OrderDtl.DrugID,OrderDtl.BatchID,OrderDtl.ConsumptionID
Order By OrderDtl.ConsumptionID asc
Select
Q1.ConsumptionID,(Sum(NVL(Q1.OrdQty,0)) + Sum(NVL(Q2.OrdQty,0))) As OrdQty,
Q1.OrdID,Q1.DrugID,Q1.BatchID,Q1.locid
from
Q1 ,Q2
where
Q1.OrdID =Q2.OrdID(+)
and
Q1.BatchID =Q2.BatchID(+)
and
Q1.DrugID =Q2.DrugID(+)
and
Q1.ConsumptionID =Q2.ConsumptionID(+)
Group By Q1.OrdID,Q1.BatchID,Q1.DrugID,Q1.ConsumptionID;
TYPE ordDtl_trec is TABLE of ordDtl_cur%ROWTYPE index by PLS_INTEGER;
l_ordDtl ordDtl_trec; ---- cursor syntax
begin
if ordDtl_cur%ISOPEN then
open ordDtl_cur; --------------opening cursor
end if;
loop
-- fetch data into cursor---
fetch ordDtl_cur
bulk collect into
l_ordDtl;
-----perform logic--------------------
for indx IN 1..l_ordDtl.COUNT loop
if vr_pSavedQty <> vr_pReturnQty then
If v_pOrdQty <= (vr_pReturnQty - vr_pSavedQty) then
vr_pSavedQty := vr_pSavedQty + v_pOrdQty;
vr_Qty := v_pOrdQty;
else
vr_Qty := (vr_pReturnQty - vr_pSavedQty);
vr_pSavedQty := vr_pSavedQty + (vr_pReturnQty - vr_pSavedQty);
end if;
end if;
end loop;
exit when ordDtl_cur%NOTFOUND;
end loop;
CLOSE ordDtl_cur; ---- closing cursor
end;
end;Hello.
Very simple.
You are using cursor name before opening it.
Here is the problem.
if ordDtl_cur%ISOPEN then
open ordDtl_cur; --------------opening cursor
end if;
end if;Please change your code like this
comment IF statement use only OPEN ordDtl_cur;
---- if ordDtl_cur%ISOPEN then
open ordDtl_cur; --------------opening cursor
--- end if;Thanks,
Suri -
Invalid Cursor error when modifying Assignment details - Transfer workflow
Hi,
We're trying to submit a Transfer transaction but if we try to modify any field in the Assignment details screen, we're getting a system error, and sometimes we see ORA-01001: invalid cursor error. We have already checked the database objects (procedures, packages, triggers) and we don't see any code which has an invalid use of a cursor. Does anyone have a clue on the cause of this error?This is just a guess,
all you cursors are being opened regardless of any condition, for example;
OPEN CUT(:NEW.LAYOUT_NO);
OPEN DET(:NEW.LAYOUT_NO);
OPEN ITM(:NEW.LAYOUT_NO);
OPEN LOT(:NEW.LAYOUT_NO);
OPEN DTN(:NEW.LAYOUT_NO, :NEW.CUT_NO, :NEW.NOTE);UNA however is opened after a condition;
IF DTN%NOTFOUND THEN
/** start --added for cha 2011-3172 6/14/2011 **/
OPEN UNA(:NEW.LAYOUT_NO, :NEW.ACCOUNT_NO);All cursors arel however closed regardless, i.e. they are all assumes to be open;
CLOSE CUT;
CLOSE DET;
CLOSE DTN;
CLOSE ITM;
CLOSE LOT;
CLOSE STAT;
CLOSE UNA;So I think you are closing the UNA cursors wen it is in fact not open.
So, move the "CLOSE UNA;" line of code to before the END IF; on line 278, since that is when it will definitely be open. -
Getting Invalid Cursor error in a procedure
Hi,
I have a procedure(1) which inturn calls another procedure(2) which does some task.
Procedure(1) accepts response from Procedure(2).
The error code of procedure(2) is *0* which is the success response.
Iam getting 0 from Procedure(2).
But still Procedure(1) gives me a Invalid cursor error ( eventhough all the cursors are closed and opened ).
Any suggestion on this????procedure p_create_conn -- Procedure(1) which is the calling proc
is
begin
connectivity_api.p_create_connection -- Procedure(2) called proc
in_scheme_number => in_scheme_number
,in_a_lp_sysid => in_a_lp_sysid
,in_z_lp_sysid => in_z_lp_sysid
,in_interconnect_name => in_interconnect_name
,in_mux_usage => in_mux_usage
,in_mux_type => in_mux_type
,out_a_end_sne => v_out_a_sne_id
,out_z_end_sne => v_out_z_sne_id
,out_sss_id => v_out_sss_id
,out_error_code => out_error_code
,out_error_message => out_error_message
,in_a_port_name => in_a_port_name
,in_a_port_signal => in_a_port_signal
,in_z_port_name => in_z_port_name
,in_z_port_signal => in_z_port_signal
,in_trs_area => in_trs_area
,in_alternate_id => in_alternate_id
,in_dcn_equipment_name => in_dcn_equipment_name
,in_dcn_equipment_id => in_dcn_equipment_id
,in_dcn_equipment_notes => in_dcn_equipment_notes
,in_tcode => in_tcode
if out_error_code != 0 --- Error code from Procedure(2) is 0 in my case
then
raise ex_p_create_connection;
end if;
-- Faliing after success response here
workflow_utils.create_link
in_link_type => 'A'
,in_source_workflow_name => con_wf_scheme_type
,in_source_record_id => in_scheme_number
,in_trigger_state => 'initial'
,in_dest_workflow_name => con_wf_connectivity
,in_dest_record_id => v_out_sss_id
,in_dest_from_state => null
,in_dest_to_state => null
,in_terminate_source => 'N'
,in_terminate_dest => 'N'
,in_user_account_name => v_user
-- in this proc all the cursors have been closed properly.
exception
when ex_p_create_connection
then
null;
when others
then
out_error_code := sqlcode;
out_error_message := sqlerrm;
end p_create_connection;
Is that fine with you???? -
I have a table called cdd_merge_children where the comments field contains the following SQL.
SELECT EVENT_ID FROM EVENT WHERE ACCOUNT_ID = :ACCOUNT_NO
In my procedure I am doing the following:
--get the comments from the cdd_merge_children table where CDD_MERGE_CHILDREN_TYPE
--is of type 3. type 3 are a replica of type 2's for audit/history purposes
SELECT DISTINCT COMMENTS
INTO ls_comments
FROM CDD_MERGE_CHILDREN
where table_name = ps_tablename
and CDD_MERGE_CHILDREN_TYPE = 3 ;
--get the comments from the table and execute the dynamic sql using the looser.
OPEN col_cv FOR ls_comments USING gvloosingaccount ;
--dump the curosr values in the table
FETCH col_cv BULK COLLECT INTO loosingvals ;
For some reason or the other when I try doing the fetch I am getting invalid cursor or ORA-01001: invalid cursor error. WHY WHY
Please help !You cannot bulk-fetch from a cursor into a collection of records, you can only bulk-fetch from a cursor into one or
more collections:
DECLARE
TYPE NameList IS TABLE OF emp.ename%TYPE;
TYPE SalList IS TABLE OF emp.sal%TYPE;
CURSOR c1 IS SELECT ename, sal FROM emp WHERE sal > 1000;
names NameList;
sals SalList;
BEGIN
OPEN c1;
FETCH c1 BULK COLLECT INTO names, sals;
END;
You cannot however,
DECLARE
TYPE NameList IS TABLE OF emp.ename%TYPE;
names NameList;
salary emp.sal%TYPE;
TYPE DeptRecTab IS TABLE OF dept%ROWTYPE;
dept_recs DeptRecTab;
CURSOR c1 IS
SELECT deptno, dname, loc FROM dept WHERE deptno > 10;
BEGIN
SELECT ename, sal BULK COLLECT INTO names, salary; -- illegal target
BEGIN
OPEN c1;
FETCH c1 BULK COLLECT INTO dept_recs; -- illegal
END;
Ok I have a table called cdd_merge_children which has a column called comments. In this column I am storing dynamic SQL such as
SELECT EVENT_ID FROM EVENT WHERE ACCOUNT_ID = :ACCOUNT_NO
Now in my code I retrieve this SQL statement and use it as follows:
--get the comments from the table and execute the dynamic sql using the looser.
OPEN col_cv FOR ls_comments USING gvloosingaccount ;
--col_cv is a reference cursor BTW
--dump the curosr values in the table
FETCH col_cv BULK COLLECT INTO loosingvals ;
Ok at this fetch is where I am getting the following error
ORA-01001: invalid cursor
Why ? Anyhelp would be great
Thank's
Sameer Handa -
"ORA-01001 Invalid Cursor" error
Platform: oracle 8.X on ibm aix and java client code from
windows NT.
JDBC DRIVER: JDBC Oracle thin driver version 1.2.
when i execute a Sql satement with Cursor expression from the
java client code with XSU it returns an XML DOM But if the
CURSOR EXPRESSION IN THE SQL QUERY RETURNS EMPTY ROWS i get
back an error node with "ORA-01001 Invalid Cursor" error
message.i had aslo set the setNullAttributes(true) property
on oraclexmlquery.
Interestingly, if i exceute the same query in the SQL plus
it returns the column names with no rows.
is there any way where i can get xml document with table
structure, when there are no rows instead of ORA error message.
This is just a guess,
all you cursors are being opened regardless of any condition, for example;
OPEN CUT(:NEW.LAYOUT_NO);
OPEN DET(:NEW.LAYOUT_NO);
OPEN ITM(:NEW.LAYOUT_NO);
OPEN LOT(:NEW.LAYOUT_NO);
OPEN DTN(:NEW.LAYOUT_NO, :NEW.CUT_NO, :NEW.NOTE);UNA however is opened after a condition;
IF DTN%NOTFOUND THEN
/** start --added for cha 2011-3172 6/14/2011 **/
OPEN UNA(:NEW.LAYOUT_NO, :NEW.ACCOUNT_NO);All cursors arel however closed regardless, i.e. they are all assumes to be open;
CLOSE CUT;
CLOSE DET;
CLOSE DTN;
CLOSE ITM;
CLOSE LOT;
CLOSE STAT;
CLOSE UNA;So I think you are closing the UNA cursors wen it is in fact not open.
So, move the "CLOSE UNA;" line of code to before the END IF; on line 278, since that is when it will definitely be open. -
REPOST: Oracle 8.1.7 JDriver with WL5.1sp9 Data inconsistency
i,
We recently moved from ORacle 8.0.6 to 8.1.7 and we use
WL5.1SP9. My team recently facing a strange problem with JDriver for
8.1.7 Type II . There has been lott of inconsitency in the data returned
by the
Driver. Specifically we face problem in using Outer joins. We ran the
same outer join query in Oracle 8.0.6 and everything was perfect but
the same give some problems like returning some value for a Null Column
like returning a value of some other row. The value that's returned for
Null Column is also not consitent every time we run the query.
Did any one face same, similar kinda of problems?? if so is there any
solution???
NOTE: The Query is working perfectly from SQL Plus.
also we tried with SP10 also... sitll getting same problems
Any Help Appreiciated...
Thanks,
Venki..if switching the driver is an option, then try the Oracle JDBC drivers
Filip
~
Namaste - I bow to the divine in you
~
Filip Hanik
Software Architect
[email protected]
www.filip.net
"Venki Seshaadri" <[email protected]> wrote in message
news:[email protected]..
i,
We recently moved from ORacle 8.0.6 to 8.1.7 and we use
WL5.1SP9. My team recently facing a strange problem with JDriver for
8.1.7 Type II . There has been lott of inconsitency in the data returned
by the
Driver. Specifically we face problem in using Outer joins. We ran the
same outer join query in Oracle 8.0.6 and everything was perfect but
the same give some problems like returning some value for a Null Column
like returning a value of some other row. The value that's returned for
Null Column is also not consitent every time we run the query.
Did any one face same, similar kinda of problems?? if so is there any
solution???
NOTE: The Query is working perfectly from SQL Plus.
also we tried with SP10 also... sitll getting same problems
Any Help Appreiciated...
Thanks,
Venki.. -
WEBUTIL_FILE.Get File Separator must be declared error in oracle 10g
hi,
when i compile the forms with attached webutil.pll , i got the error "WEBUTIL_FILE.Get File Separator must be declared error in oracle 10g".but i have compiled the webutil.pll its fine.Please tell me th solution.
Thanks,
Maranhi
hmmmm the latest version of webutil.pll you downloaded from where? forms version 10.1.2... comes with the latest version of .pll.
what is the webutil version?
sarah -
I have found a thread that asks about this same error, but it is inappropriately filed in the 'video' section (and it belongs here). Hopefully, by posting it to this section I will get help with an answer!
My brand new MacBook (SR, Gen 3) has cursor errors very frequently.
I notice that every so often, the cursor just becomes a big blur on the screen (about two times the size of the actual cursor).
This is what it looks like: http://www.flickr.com/photo_zoom.gne?id=2176858095&size=l
Any ideas on how to fix this? Clearing the cache was no help at all, and neither was resetting the PRAM. All hardware tests pass.Nope, I've never really installed anything other than firefox.
I know it doesn't look like the default cursor, but it is- that is just what it looks like when it becomes a blob! -
Upgraded to 64 bit Oracle DataAccess.dll and now more open cursors errors
Hi, We recently converted from .net framework 1.1 application to .net 4.0 framework for 64 bit. We installed the 64 bit version of Oracle DataAccess dll. It now seems like we are getting many more open cursor error messages in our application. The open_cursor value set in the database has not changed and other than the 64 bit Oracle and .net 4.0 framework nothing has changed. I was just curious if anyone else that has converted to the 64 bit Oracle DataAccess dll has experienced an increased number of open cursor errors? If so, what was the resolution.
I apprecieate any feedback.
ThanksWhat do you have /32BIT flag set to in the assembly? Ie, was it compiled with AnyCPU, x86, etc? You can use corflags.exe with the .net sdk to find out.
Prior to VS2010, the default was AnyCPU which meant it ran as 64 bit on 64 bit OS, and 32 bit on 32 bit OS.
As of VS2010, the IDE defaults to x86, which means it runs as 32 bit no matter what.
32 bit apps need 32 bit odp/client. 64 bit apps need 64 bit odp/client.
The error you're getting usually means you have the wrong bits (32/64) of the Oracle client installed.
Assuming you have the wrong client bits installed, you could either
a) make the app run as the other bits by setting/clearing the 32BIT flag (also by using corflags.exe)
b) install the other bits of Oracle client software. a 32 bit home and a 64 bit home play rather nicely together for the most part, but you need to install them into separate homes.
Hope it helps,
Greg -
Hi all,
I am running into some wired errors ...
I can easily do a select statement, e.g., select * from schema.table ...
But when I do a cursor in a stored procedure, e.g.,
CURSOR cursor_x
IS
select * from schema.table;
I will hit error ORA-01031: insufficient privileges
definitely, I should be able to read from that table ...
What is going on here ...
Any help ???842787 wrote:
Hi all,
I am running into some wired errors ...
I can easily do a select statement, e.g., select * from schema.table ...
But when I do a cursor in a stored procedure, e.g.,
CURSOR cursor_x
IS
select * from schema.table;
I will hit error ORA-01031: insufficient privileges
definitely, I should be able to read from that table ...
What is going on here ...
Any help ???As sybrand says, this is a basic documentation question and easily answered by searching the web.
To repeat what millions have already answered before....
The problem is that when you issue a direct select statement, you are using role based permissions to access the database objects (table in your case).
When you write PL/SQL code (your CURSOR...) this does not use role based permissions, but must have explicit permission granted on that object to that user.
In other words, you need to grant read permissions on that table to your user directly (not via the role of the user).
Maybe you are looking for
-
G4 Cube, External Hard drive, and Darwin oh my!
I was given a G4 cube that was having difficulties booting up. At some point in time someone upgraded the hard drive from 30GB to 120GB...When I first got it, I inserted the OS 10.4 DVD and ran a disk utility, repaired permissions, erased the hard dr
-
I currently have Adobe Creative Suite Production Premium which includes everything from Photoshop to Premier Pro and more besides. It also has Adobe Media Encoder which I use regularly for encoding videos. I have recently been joined in to a team whi
-
Is this effect possible?
Can anyone help me determine if this effect is possible in flash? I've created a video to show the effect, heres the link: http://www.mediafire.com/?sharekey=db70f6709325bacd1bee9a6e9edd9c76e04e75f6e8ebb871 Its only 2mb video. Basically what happens
-
Correcting a bad block on ext4 and with GTP partition table
Hello, I ran a SMART offline test today which came back as a bad block: # 1 Extended offline Completed: read failure 30% 8363 3212759896 This is my first run-in with a bad block, and since these drives are big and relatively ne
-
Do I have Standard or Custim installed?
I have Firefox up and running without any problems. Just want to know how I determine if I am running Standard or Custom edition? If it is Standard can I delete it and reload Custom?