ORA-02404 while using toad
I checked the schema for plan_table and it is available I can do select * from plan_table
but When I try to use toad explain plan it gives me error as ora-02404
Any help appreciated
KM
By default TOAD uses its own PLAN_TABLE. So either you didn't run the script to create it or you need to change the options to use the Oracle one instead.
Cheers, APC
Similar Messages
-
ORA-6508 while using attached PL-SQL library [SOLVED]
Hi all,
we use Developer 10.1.2.0.2 on Windows XP Professional SP 2.
We have a Linux-based ( 2.6.5-7.287.3) OAS (10.1.2.0.2).
We received ORA-6508 while starting a report from within a menu. In fact all reports led to the same mistake. I must admit that they all worked fine before. We found a workaround for this problem by recompiling the attached PL-SQL library. The question is: what caused the loss of information ? What reasons can be imagined for such a behaviour ?
Regards
Frank
Message was edited by:
fwbHi Christian,
what we have is:
We have a .mmx in production for quite a while. Within the .mmx you can start several reports by selecting an entry of the menu. It all works without problems. Then suddenly by choosing one of the reports you face ORA-6508 (something that has never happend before even though we made no changes to the system - at least I have no knowledge of any ;)
The .pll which I recompiled is attached to the menu (.mmb). Recompiling the .pll fixes the issue.
Regards
Frank
Message was edited by:
fwb -
ORA-02019 while using DBMS_FILE_TRANSFER Package.
Hi,
I am trying to transfer the datafiles from 10.2.0.3 database residing on File-system to 11gR2 database residing on ASM. Both the DBs are on Different machines across datacenters.
I am trying to use Transportable Tablespace to move the data. As a part of it, I am trying to use DBMS_FILE_TRANSFER package to move the 10gR2 files to 11gR2 ASM.
I am getting the below issue while doing so:
SQL> exec sys.DBMS_FILE_TRANSFER.GET_FILE('sdir','data01.dbf','tdir','data01.dbf','RECDB');
BEGIN sys.DBMS_FILE_TRANSFER.GET_FILE('sdir','data01.dbf','tdir','data01.dbf','RECDB'); END;
ERROR at line 1:
ORA-02019: connection description for remote database not found
ORA-06512: at "SYS.DBMS_FILE_TRANSFER", line 37
ORA-06512: at "SYS.DBMS_FILE_TRANSFER", line 132
ORA-06512: at line 1
Above SQL was executed from Target Host (11gR2) to GET file from 10gR2. The above directory objects point to correct locations on respective hosts.
RECDB - it is the DB link which is owned by SYSTEM user and will connect to 10gR2 DB as SYSTEM user.
Strange thing is when i am querying the source 10gR2 DB from Target DB using Db link, IT is WORKING fine
SQL> select name from v$database@RECDB ;
NAME
POCREC01
Elapsed: 00:00:00.15
SQL> select * from dual@RECDB;
D
X
Elapsed: 00:00:00.12
I also have TNS entry in target tnsnames.ora as:
POCREC01 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = pocserver.com)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = pocrec01)
SQL> create database link RECDB connect to system identified by <password> using 'POCREC01';
Database link created.
SQL> select * from all_db_links;
OWNER
DB_LINK
USERNAME
HOST
CREATED
SYSTEM
RECDB
SYSTEM
POCREC01
05-JAN-11
So, I want help on whether above issue is a BUG with Package (checked in Metalink and cannot find anything) OR am I doing something wrong??
ThanksCan you please use "create public database link " to create the db link as a PUBLIC link and retry.
-
I will include the query below my question as it is very long.
I am using Microsoft SQL Server Reporting Services to connect to an Oracle Database (9i v 2). When I put in the query below I get the following error coming from the Oracle Server -
"TITLE: Microsoft Report Designer
An error occurred while executing the query.
ORA-32036: unsupported case for inlining of query name in WITH clause"
I found an explanation for this error - " There is at least one query name which is inlined more than once because it's definition query is too simple and references another query name. This is currently unsupported yet." - and taking out the sub-queries one by one it seems to be COMBINE_TWO sub-query that causes the issue. Apparently it doesn't like the Select * from BLAHBLAH and finds it to be unecessary. I have made this query using nested selects - but the code gets redundant and I end up having to use the same query two or three times....the whole statement takes far too long to execute.
Any coding suggestions or workaround suggestions would be appreciated - I have been looking at this problem so long that I have tunnel vision. There has to be a fix or a better way...
Thanks!
Brett
Here is the query....
WITH
/*This query finds all pending WO's and caculates all changing service
levels for limited, basic, internet and phone. Any values that do not
change are kept at null, any services being disconnected are dropped to a negative
and service being upgrades and/or downgraded but still kept are valued
at their to_quantity value. */
STEP_1 AS
SELECT
WO.ACCOUNT_NUMBER,
WO.WORK_ORDER_NUMBER,
WO.WO_TYPE,
WOD.SERVICE_CODE,
CASE WHEN WOD.SERVICE_CODE = '101' AND WOD.FROM_QUANTITY != WOD.TO_QUANTITY THEN WOD.TO_QUANTITY - WOD.FROM_QUANTITY ELSE NULL END LIM,
CASE WHEN WOD.SERVICE_CODE = '111' AND WOD.FROM_QUANTITY != WOD.TO_QUANTITY THEN WOD.TO_QUANTITY - WOD.FROM_QUANTITY ELSE NULL END EXP,
CASE WHEN WOD.SERVICE_CODE = '30001' AND WOD.FROM_QUANTITY != WOD.TO_QUANTITY THEN WOD.TO_QUANTITY - WOD.FROM_QUANTITY ELSE NULL END HSI,
CASE WHEN WOD.SERVICE_CODE IN ('LINE FL', 'ULTS FL') AND WOD.FROM_QUANTITY != WOD.TO_QUANTITY THEN WOD.TO_QUANTITY - WOD.FROM_QUANTITY ELSE NULL END PHONE
FROM
KAN_WORK_ORDER_MASTER WO INNER JOIN KAN_WORK_ORDER_DETAIL WOD ON WO.WORK_ORDER_NUMBER = WOD.WORK_ORDER_NUMBER
WHERE
WO.WO_TYPE IN ('DI', 'DW', 'IN', 'SR', 'UP')
AND WOD.SERVICE_CODE IN ('101', '111', '30001', 'LINE FL', 'ULTS FL')
AND POOL = 'A'
AND WO_STATUS = ' '),
/* This adds all values from step 1 and condenses all work orders
into one row, a value for each service. */
STEP_2 AS
SELECT
ACCOUNT_NUMBER,
WORK_ORDER_NUMBER,
WO_TYPE,
SUM(LIM) LIM,
SUM(EXP) EXP,
SUM(HSI) HSI,
SUM(PHONE) PHONE
FROM
STEP_1
GROUP BY
ACCOUNT_NUMBER,
WORK_ORDER_NUMBER,
WO_TYPE
ORDER BY
ACCOUNT_NUMBER),
/* This query takes the results from Step 2 and then looks at all service
levels that were not included or changed in the work order detail file
and makes sure that unchanged services are included in the final total.
FOR EXAMPLE : Coming from step 2, if LIM is NULL we know that no changes
were done to LIM in the work order - so, if the customer has Limited then
the service quantity is added to the total. Else - if LIM is not null, then
we know the service level was effected by the work order - so do not
include the quantity from the services file because it will be innacurate
once the work order is complete*/
STEP_3 AS
SELECT
WO.ACCOUNT_NUMBER,
WO.WORK_ORDER_NUMBER,
WO.WO_TYPE,
CASE WHEN LIM IS NULL AND CS.SERVICE_CODE = '101' THEN (CS.SERVICE_QUANTITY + CS.SERVICE_QUANTITY_TO_FREE) ELSE NULL END LIM,
CASE WHEN EXP IS NULL AND CS.SERVICE_CODE = '111' THEN (CS.SERVICE_QUANTITY + CS.SERVICE_QUANTITY_TO_FREE) ELSE NULL END EXP,
CASE WHEN HSI IS NULL AND CS.SERVICE_CODE = '30001' THEN (CS.SERVICE_QUANTITY + CS.SERVICE_QUANTITY_TO_FREE) ELSE NULL END HSI,
CASE WHEN PHONE IS NULL AND CS.SERVICE_CODE IN ('LINE FL', 'ULTS FL') THEN (CS.SERVICE_QUANTITY + CS.SERVICE_QUANTITY_TO_FREE) ELSE NULL END PHONE
FROM
STEP_2 WO INNER JOIN KAN_CUSTOMER_SERVICES CS ON WO.ACCOUNT_NUMBER = CS.ACCOUNT_NUMBER
WHERE
CS.SERVICE_CODE IN ('101', '111', '30001', 'LINE FL', 'ULTS FL')
AND CS.SERVICE_STATUS = 'A'),
/* This step calculated the current service level. */
STEP_4 AS
SELECT
ACCOUNT_NUMBER,
WORK_ORDER_NUMBER,
WO_TYPE,
SUM(LIM) LIM,
SUM(EXP) EXP,
SUM(HSI) HSI,
SUM(PHONE) PHONE
FROM
STEP_3
GROUP BY
ACCOUNT_NUMBER,
WORK_ORDER_NUMBER,
WO_TYPE
COMBINE_TWO AS
SELECT
FROM
STEP_2
UNION ALL
SELECT
FROM
STEP_4
SELECT
WOM.SCHEDULE_DATE,
COMBINE_TWO.ACCOUNT_NUMBER,
COMBINE_TWO.WORK_ORDER_NUMBER,
COMBINE_TWO.WO_TYPE,
HM.ADDRESS_LINE_1,
HM.ADDRESS_LINE_2,
HM.ADDRESS_LINE_3,
HM.ADDRESS_LINE_4,
SUM(LIM) LIM,
SUM(EXP) EXP,
SUM(HSI) HSI,
SUM(PHONE) PHONE
FROM
COMBINE_TWO
INNER JOIN KAN_CUSTOMER_MASTER CM ON COMBINE_TWO.ACCOUNT_NUMBER = CM.ACCOUNT_NUMBER
INNER JOIN KAN_HOUSE_MASTER HM ON CM.HOUSE_NUMBER = HM.HOUSE_NUMBER
INNER JOIN KAN_WORK_ORDER_MASTER WOM ON COMBINE_TWO.WORK_ORDER_NUMBER = WOM.WORK_ORDER_NUMBER
GROUP BY
WOM.SCHEDULE_DATE,
COMBINE_TWO.ACCOUNT_NUMBER,
COMBINE_TWO.WORK_ORDER_NUMBER,
COMBINE_TWO.WO_TYPE,
HM.ADDRESS_LINE_1,
HM.ADDRESS_LINE_2,
HM.ADDRESS_LINE_3,
HM.ADDRESS_LINE_4
HAVING
SUM(LIM) <= 0
AND SUM(EXP) <= 0
AND
SUM(HSI) >= 1
OR SUM(PHONE) >= 1
ORDER BY
ACCOUNT_NUMBERGREAT job posting and formatting the query. Also helpful was your really good documentation in the query.
You seem to be approaching your problem in the right way. You are pushing the limits of sql is capable of doing.
Here are some ideas that you can consider and probably discard; I don't have any good ones but maybe these can encourage you or someone else to think of something better. Sometimes you have to consider and discard bad ideas before getting to the good ones - its part of the process.
The query is complex enough - how many steps, with unions and subqueries galore - maybe a deconstructed pipelined function would be easier.
Views aren't usually an answer to problems like this, and more often than not cause other problems later when somebody tries to join to them.
Deconstructing the query and putting the incremental step data into global temporary tables might work, with a query at the end to read the final result set. -
IO Exception Broken Pipe ORA-17002 while using connection pooling
Hi
We are experiencing "broken pipe ORA-17002 error" when using connection pooling. This seems to be a common error when implementing connection pooling, but I didn't find any solution anywhere.
we are using Oracle 9i 9.2.0.1 JDBC thin driver
Our database is Oracle 8.1.7 running on HP Unix
The middle tier(Tomcat) runs on RedHat linux server
We are using JDK1.3
It seems the connections automatically get stale or bad after certain period of time.Iam checking to see if the connection is closed, before giving the connection from the pool to the appilcation.It seems its still open.But when I start using the connection to open a callable statement or setAutocommit to false, it says Broken pipe or No more data to read from the socket.
We are implementing our own connection pooling class(we experimented with OracleConnectionCacheImpl but it too gave the same errors).
Does anybody have a solution for this problem??
Is there a workaround for this?I would like to know how connection pooling is implemented in most of the applications that use oracle database?Or do we need to explicitly test the connection before using it, and reopen a connection if that is bad??
Thanks
Anilkalle
Thank you very much for your advice!!!
Like you said, I started to check whether the connections are fine before giving them from the pool.I am executing a simple "select 'anil' from dual" and if its fine only then I return the connection. So far it seems to be fine. Also I am reopening the connections(closing the old ones and opening new connections) after every 12 hours.
As far as the JDBC driver is concerned, I already tried with Oracle 8i driver, it gave the same problems. I read that 9i driver might solve this problem, so I changed to the latest 9i driver (classes12_g.zip).
Sometimes before(before I started checking whether the connection is good )the application used to hang up at the point where I am issuing setAutoCommit(false).It never comes out from that statement.Is this something to do with theconnections being closed?
What I am afraid is, will the appilation get hung up even after I check the connection with select query and then issue autocommit(false)??
Or will it hang up while I check with a select query??
As long as it doesn't hung up, I am fine. Because i am cathching the exceptions.
Thanks In ADVANCE
Anil -
Using Oracle OLE DB provider (with ADO) generates error: ORA-01843 while using date
Were using OLE DB provider in order to connect to our Oracle 9i database. When executing the following query in a SQL Plus window I will get the correct results:
SELECT gum_seu_syo_id, seu_userid, seu_first_name, seu_last_name
From group_user_mapping, security_users
Where gum_seu_syo_id = seu_syo_id
and gum_term_date > '8/19/2002'
and gum_seg_syo_id = 11
However if will execute the same query from the our application (VB using ADO) I will get the following error:
ORA-01843: Not a valid month
Checking with our Oracle DBA we made sure my registry is correct and includes the correct format under HEKY_LOCAL_MACHINE\SOFTWARE\ORACLE\ORACLE_HOME,
where the key is NLS_DATE_FORMAT (of type REG_EXPAND_SZ) with the value:
MM/DD/YYYY HH:MI:SS AM
I also run the following query in a SQL Plus window:
select sysdate from dual;
and got the following result:
08/19/2002 10:27:20 AM
which shows that the data format is correct.
Trying to switch between the month and day in the query (put '19/8/2002') worked from the application but generated ORA-01843: Not a valid month in the SQL Plus window.
Any ideas?try using
to_char function
for eg.
select * from emp where to_char(hiredate,'dd/mm/yy') > '20/3/83'.
Jagriti -
ORA-00932 while using nvl with trunc function
What happens when trunc is executed on null?
I am executing the following query:
"select nvl(trunc(null),sysdate) from dual"
and this throws "ORA-00932: inconsistent datatypes: expected NUMBER got DATE, error at Line:1 Column:23".
Whereas "select nvl(null,sysdate) from dual" returns sysdate correctly.
Also "select trunc(null) from dual" returns null only. So when the returned null is passed through nvl why am I getting exception?
This is happening in ver 9.2.0.5.0 and 10.2.0.2.0
There is another observation, which is an issue that we have found in our code, and while trying to fix that we saw the earlier observation.
SELECT * FROM orgs, dual where
trunc(SYSDATE) between trunc(orgs.effective_start_date) and nvl(trunc(orgs.effective_end_date),trunc(sysdate))
Here effective start date and effective end date for orgs are null for all records.
When we run this query on ver 9.2.0.5.0, this runs without any exception. But when we run this query on ver 10.2.0.2.0, we get the same exception, "ORA-00932: inconsistent datatypes: expected NUMBER got DATE, error at Line:2 Column:95".
The join with dual is fake, in actual scenario we have join with other tables, but since we are able to replicate with dual, removed all other details to keep this simple.
Now if we remove the join with dual, the query works fine in both the env.
SELECT * FROM orgs where
trunc(SYSDATE) between trunc(orgs.effective_start_date) and nvl(trunc(orgs.effective_end_date),trunc(sysdate))What happens when trunc is executed on null?
I am executing the following query:
"select nvl(trunc(null),sysdate) from dual"
and this throws "ORA-00932: inconsistent datatypes:
expected NUMBER got DATE, error at Line:1
Column:23".
Whereas "select nvl(null,sysdate) from dual" returns
sysdate correctly.
Also "select trunc(null) from dual" returns null
only. So when the returned null is passed through nvl
why am I getting exception?
This is happening in ver 9.2.0.5.0 and 10.2.0.2.0The first parameter to NVL is determining the expected datatype of the returned column, with the trunc function defaulting that to NUMBER because it's parameter is NULL. The second parameter to NVL needs to match that datatype which it doesn't because it is a date.
SQL> select nvl(trunc(sysdate), sysdate) as mydate from dual;
MYDATE
26/05/2006 00:00:00
SQL> select nvl(trunc(null), sysdate) as mydate from dual;
select nvl(trunc(null), sysdate) as mydate from dual
ERROR at line 1:
ORA-00932: inconsistent datatypes: expected NUMBER got DATE
SQL> select nvl(trunc(123), sysdate) as mydate from dual;
select nvl(trunc(123), sysdate) as mydate from dual
ERROR at line 1:
ORA-00932: inconsistent datatypes: expected NUMBER got DATE
SQL> -
ORA-03137: While using Enterprise manager Grid Control
Hi All,
I have this strange issue.
I use grid control to monitor production database. Both grid and prod db are on diff servers.
when I login to grid control and frm there i login to prod database. I see this error in prod db alert log.
Fri Aug 26 01:05:40 2011
Errors in file /logs/oracle/admin/diag/rdbms/mksprd/mksprd/trace/mksprd_ora_25152.trc:
ORA-03137: TTC protocol internal error : [12333] [11] [81] [117] [] [] [] []
This appears only at the first login.
Here are some details.
Operating System SunOS 5.10 Generic_144488-11 (64-bit)
Database Version : 11.1.0.7.0
Regards,Hello,
this appears to be related to optimpeek_user_binds parameter in 11.1.0.7.
There is a note in My Oracle Support (1296792.1) that shows the same symptoms.
It looks to me that the solution is to install patch: 9703463
If this is not possible in your system then you can try the workaround from the Note:
alter system set "_optim_peek_user_binds"=false
Kind regards,
Frank -
Getting ORA-00001 while using MERGE
hi there,
I am loading data from one Oracle table into another, using MERGE. My target table has a primary key constraint on TRANS_DATE, SEQ_NR and FILE_NAME. I have made sure that there are no duplicate rows in the the source table with regard to the target tables's primary key.
The problem is that I am getting ORA-00001: Primary Key Violated ...
my code is as follows:
declare
begin
merge into fact_prepaidcalls_tb TARG
using
select
nvl(fact_prepcustomers_tb.subscriberid,0) SUBSCRIBERID,
accnum ACCNUM,
sdrdate TRANS_DATE,
TO_NUMBER(to_char(sdrdate,'yyyymmdd')) DIMDATEID,
return_timeid(sdrdate) DIMTIMEID,
return_peaktimeid(to_char(PAY_SDR.SDRDATE,'hh24miss'),SDRDATE) DIMPEAKTIMEID,
nvl(dim_calltype.dimcalltypeid,0) DIMCALLTYPEID,
sdrduration CHARGEDURATION,
nvl(dim_tds_term.DIMTDStermid,9999) DIMTDSTERMID,
calling CALLING,
called CALLED,
cparty CPARTY,
freetimeused FREETIMEUSED,
creditused CREDITUSED,
creditrebate CREDITREBATE,
servicetax SERVICETAX,
surcharge SURCHARGE,
follow FOLLOW,
nvl(dim_call_location.dimcalllocationid,0) DIMCALLLOCATIONID,
startbalance STARTBALANCE,
priceoption PRICEOPTION,
nvl(dim_cos.dimcosid,0) DIMCOSID,
nvl(debitrate1,0) DEBITRATE1,
debitrate2,
prepaid.pay_sdr.region REGION,
substr(file_name, instr(file_name,'cdr')) FILE_NAME,
seq_nr SEQ_NR,
SYSDATE LOADDATE,
ORIGINNODE
from prepaid.pay_sdr, dim_call_location, dim_calltype, dim_cos, dim_tds_term, fact_prepcustomers_tb
where sdrdate >= to_date('10-Feb-2008 000000','dd-mon-rrrr hh24miss') and
sdrdate <= to_date('10-Feb-2008 235959','dd-mon-rrrr hh24miss') and
fact_prepcustomers_tb.msisdn = prepaid.pay_sdr.accnum and
dim_calltype.calltypeid = prepaid.pay_sdr.type and
dim_call_location.cellid = prepaid.pay_sdr.region and
dim_cos.cosid = prepaid.pay_sdr.cos and
dim_tds_term.termid = prepaid.pay_sdr.term
) SOUR
on
TARG.TRANS_DATE = SOUR.TRANS_DATE and
TARG.SEQ_NR = SOUR.SEQ_NR and
TARG.FILE_NAME = SOUR.FILE_NAME
when not matched then
--load fact data
insert
( SUBSCRIBERID,
ACCNUM,
TRANS_DATE,
DIMDATEID,
DIMTIMEID,
DIMPEAKTIMEID,
DIMCALLTYPEID,
CHARGEDURATION,
DIMTDSTERMID,
CALLING,
CALLED,
CPARTY,
FREETIMEUSED,
CREDITUSED,
CREDITREBATE,
SERVICETAX,
SURCHARGE,
FOLLOW,
DIMCALLLOCATIONID,
STARTBALANCE,
PRICEOPTION,
DIMCOSID,
DEBITRATE1,
DEBITRATE2,
REGION,
FILE_NAME,
SEQ_NR,
LOADDATE,
CALLCHARGE,
originnode)
values
( SOUR.subscriberid,
SOUR.ACCNUM,
SOUR.TRANS_DATE,
SOUR.DIMDATEID,
SOUR.DIMTIMEID,
SOUR.DIMPEAKTIMEID,
SOUR.DIMCALLTYPEID,
SOUR.CHARGEDURATION,
SOUR.DIMTDSTERMID,
SOUR.CALLING,
SOUR.CALLED,
SOUR.CPARTY,
SOUR.FREETIMEUSED,
SOUR.CREDITUSED,
SOUR.CREDITREBATE,
SOUR.SERVICETAX,
SOUR.SURCHARGE,
SOUR.FOLLOW,
SOUR.DIMCALLLOCATIONID,
SOUR.STARTBALANCE,
SOUR.PRICEOPTION,
SOUR.DIMCOSID,
SOUR.DEBITRATE1,
SOUR.DEBITRATE2,
SOUR.REGION,
SOUR.FILE_NAME,
SOUR.SEQ_NR,
SOUR.LOADDATE,
SOUR.DEBITRATE1,
SOUR.originnode);
commit;
end;Hi,
you're missing WHEN MATCHED THEN <update_clause>
{noformat}
MERGE <hint> INTO <table_name>
USING <table_view_or_query>
ON (<condition>)
WHEN MATCHED THEN <update_clause>
DELETE <where_clause>
WHEN NOT MATCHED THEN <insert_clause>
[LOG ERRORS <log_errors_clause> <reject limit <integer | unlimited>];
{noformat}
Edited by: bobbydj on Sep 18, 2008 4:53 PM
or you can try and add the primary key in the on condition -
Ora 29534 while using loadjava for jar files
I am trying to load activation/pop3/mail.jar in oracle 9.2.0.1 database.
command : loadjava -user maxsb/maxsb@q71d -resolve -verbose -genmissing activation.jar
but its giving me following error :
resolving: class com/sun/mail/pop3/DefaultFolder
errors : class com/sun/mail/pop3/DefaultFolder
ORA-29534: referenced object MAXSB.com/sun/mail/pop3/POP3Store could not be
resolved
errors : class com/sun/mail/pop3/POP3Folder
ORA-29534: referenced object MAXSB.com/sun/mail/pop3/DefaultFolder could not
be resolved
errors : class com/sun/mail/pop3/POP3Message
ORA-29534: referenced object MAXSB.com/sun/mail/pop3/POP3Folder could not be
resolved.....
have already gave grant permissions to user..still giving me similar errors at the time of loading jar file nito oracle database.
pl provide the solution..
KetsOracle is saying
Cause: Name resolution determined that the indicated object is referenced but could not be resolved.
Action: Correct name resolver or address resolution problems in the referenced class, or correct compilation problems in its source.
-aijaz -
ORA-03123 while using UTL_FILE package in oracle forms 10g
hi all,
i have created a directory 'REPORTS' as 'E:\EXCEL_TESTING_FORM\' and give grant read,write this directory to scott.
and also given grant execute on UTL_FILE to scott;
i have written this code in a button-pressed trigger and my file name is somename.xls file
After printing the first line like 7369SMITH3000 in a single cell when it is going to print the second employee record it is showing
ORA-03123 inside the loop.
CURSOR EMP_DATA IS
SELECT * FROM SCOTT.EMP;
C_REF EMP_DATA%ROWTYPE;
L_FILE UTL_FILE.FILE_TYPE;
V_PATH VARCHAR2(200) := '';
BEGIN
V_PATH := 'REPORTS';
L_FILE := UTL_FILE.FOPEN (V_PATH,P_FILE_NAME, 'W');
OPEN EMP_DATA;
LOOP
FETCH EMP_DATA INTO C_REF;
EXIT WHEN EMP_DATA%NOTFOUND;
UTL_FILE.PUT_LINE(L_FILE, TO_CHAR(C_REF.EMPNO));
UTL_FILE.PUT_LINE(L_FILE, C_REF.ENAME);
UTL_FILE.PUT_LINE(L_FILE, TO_CHAR(C_REF.SAL));
END LOOP;
CLOSE EMP_DATA;
UTL_FILE.FFLUSH(L_FILE);
UTL_FILE.FCLOSE(L_FILE);
please guide me how to avoid that error and also how to print cell wise why because it is print in a single cell.
please reply...hi Andreas Weiden,
No it is not a network-drive. i have total 0f 3 drives
one is of c drive for wind sp2 and in d i have loaded oracle database and i have created a directory on e drive i.e 'E:\EXCEL_TESTING_FORM\'
in that i have created a excel file i.e called taru.xls.
so i want to know where is the problem.
please reply... -
ORA-00902: invalid datatype comile error while using CAST function
Hi everyone,
I'm getting ORA-00902: invalid datatype compilation error while using CAST function.
open ref_cursor_list for select empName from TABLE(CAST(part_t AS partnumberlist));
The partnumberlist and ref_cursor_list is declared in the Package spec as given below.
TYPE ref_cursor_list IS REF CURSOR;
TYPE partnumberlist IS TABLE OF emp.empName%TYPE;
The error points the partnumberlist as invalid datatype in TOAD because of this i'm unable to compile the package.
Any suggestion
Thanks and regards
Sathish GopalHere is my code for
package Spec
CREATE OR REPLACE PACKAGE "HISTORICAL_COMMENTZ" AS
TYPE prior_part_data_record IS RECORD (
prior_part_row_id PGM_RPLCMNT_PART.PR_PART_ROW_S_ID%TYPE,
prior_pgm_chng_s_id PGM_RPLCMNT_PART.PR_PGM_CHNG_S_ID%TYPE
TYPE parts_list IS TABLE OF prior_part_data_record;
--TYPE parts_list IS TABLE OF NUMBER;
TYPE partnumberlist IS TABLE OF PGM_RPLCMNT_PART.PR_PART_ROW_S_ID%TYPE;
TYPE partnumber_cursor IS REF CURSOR;
TYPE comment_record IS RECORD (
pgm_s_id PGM_PART_CMNT.PGM_S_ID%TYPE,
part_row_s_id PGM_PART_CMNT.PART_ROW_S_ID%TYPE,
pgm_chng_s_id PGM_PART_CMNT.PGM_CHNG_S_ID%TYPE,
cmnt_txt PGM_PART_CMNT.CMNT_TXT%TYPE,
cmnt_dt PGM_PART_CMNT.CMNT_DT%TYPE,
updt_rsrc_id PGM_PART_CMNT.UPDT_RSRC_ID%TYPE
TYPE comment_list IS TABLE OF comment_record;
global_pgm_s_id INTEGER := 0;
global_part_row_s_id INTEGER := 0;
err_num NUMBER := 999999;
err_msg VARCHAR2 (250);
PROCEDURE getComments (
pgm_s_id IN NUMBER,
part_row_s_id IN NUMBER,
partnumber_cursorlist out partnumber_cursor);
END;
Package Body
CREATE OR REPLACE PACKAGE BODY HISTORICAL_COMMENTZ
AS
FUNCTION getPriorPart
(param_prior_pgm_chng_s_id IN PGM_RPLCMNT_PART.PR_PGM_CHNG_S_ID%TYPE,
return_prior_part_data_record IN OUT prior_part_data_record
RETURN INTEGER
IS
retVal INTEGER;
prior_part_row_id INTEGER;
prior_pgm_chng_s_id INTEGER;
local_prior_part_data_record prior_part_data_record;
BEGIN
SELECT PR_PART_ROW_S_ID AS prior_part_row_id, PR_PGM_CHNG_S_ID AS prior_pgm_chng_s_id
INTO local_prior_part_data_record
--SELECT PR_PART_ROW_S_ID INTO retVal
FROM PGM_RPLCMNT_PART
WHERE PGM_S_ID = global_pgm_s_id AND CUR_PGM_CHNG_S_ID = param_prior_pgm_chng_s_id;
return_prior_part_data_record := local_prior_part_data_record;
retVal := 0;
RETURN retVal;
EXCEPTION
WHEN NO_DATA_FOUND
THEN
err_num := SQLCODE;
err_msg := 'SQL Error ' || SUBSTR (SQLERRM, 1, 250);
DBMS_OUTPUT.put_line ('SQLERROR = ' || err_msg);
retVal := -1;
RETURN retVal;
WHEN OTHERS
THEN
err_num := SQLCODE;
err_msg := 'SQL Error ' || SUBSTR (SQLERRM, 1, 250);
DBMS_OUTPUT.put_line ('SQLERROR = ' || err_msg);
retVal := -1;
RETURN retVal;
END getPriorPart;
FUNCTION getComment (found_parts_list IN parts_list, comments OUT comment_list)
RETURN INTEGER
IS
CURSOR init_cursor
IS
SELECT PGM_S_ID,PART_ROW_S_ID,PGM_CHNG_S_ID,CMNT_TXT,CMNT_DT,UPDT_RSRC_ID
FROM PGM_PART_CMNT WHERE 1 = 2;
retVal INTEGER;
indexNum PLS_INTEGER;
local_part_record prior_part_data_record;
local_comment_record comment_record;
local_part_row_s_id NUMBER;
i PLS_INTEGER;
BEGIN
OPEN init_cursor;
FETCH init_cursor
BULK COLLECT INTO comments;
i := 0;
indexNum := found_parts_list.FIRST;
WHILE indexNum IS NOT NULL
LOOP
local_part_record := found_parts_list(indexnum);
local_part_row_s_id := local_part_record.prior_part_row_id;
SELECT PGM_S_ID,PART_ROW_S_ID,PGM_CHNG_S_ID,CMNT_TXT,CMNT_DT,UPDT_RSRC_ID
INTO local_comment_record FROM PGM_PART_CMNT
WHERE PGM_S_ID = global_pgm_s_id
AND PART_ROW_S_ID = local_part_row_s_id;
comments(i) := local_comment_record;
i := i + 1;
END LOOP;
RETURN retval;
EXCEPTION
WHEN NO_DATA_FOUND
THEN
err_num := SQLCODE;
err_msg := 'SQL Error ' || SUBSTR (SQLERRM, 1, 250);
DBMS_OUTPUT.put_line ('SQLERROR = ' || err_msg);
RETURN retval;
WHEN OTHERS
THEN
err_num := SQLCODE;
err_msg := 'SQL Error ' || SUBSTR (SQLERRM, 1, 250);
DBMS_OUTPUT.put_line ('SQLERROR = ' || err_msg);
RETURN retval;
END getComment;
PROCEDURE getComments
pgm_s_id IN NUMBER,
part_row_s_id IN NUMBER,
partnumber_cursorlist OUT partnumber_cursor)
IS
comment_recordlist comment_record;
retPartnumberlist partnumberlist;
found_parts_list parts_list;
local_part_record prior_part_data_record;
is_more_parts BOOLEAN;
driver_chng_s_id NUMBER;
num_parts NUMBER;
retVal NUMBER;
comments comment_list;
returnPartnumberlist partnumberlist;
iloopCounter PLS_INTEGER;
inx1 PLS_INTEGER;
part_t partnumberlist :=partnumberlist(100,200,300);
CURSOR part_list_init_cursor
IS
SELECT PR_PART_ROW_S_ID,PR_PGM_CHNG_S_ID FROM PGM_RPLCMNT_PART WHERE 1 = 2;
CURSOR inIt_cursor
IS
SELECT 0 FROM DUAL WHERE 1 = 2;
BEGIN
DBMS_OUTPUT.ENABLE (5000000);
global_pgm_s_id := pgm_s_id;
global_part_row_s_id := part_row_s_id;
SELECT PART_ROW_S_ID AS prior_part_row_id, PR_PGM_CHNG_S_ID AS prior_pgm_chng_s_id
INTO local_part_record
FROM PGM_RPLCMNT_PART
WHERE PGM_S_ID = global_pgm_s_id AND PART_ROW_S_ID = global_part_row_s_id AND
CUR_PGM_CHNG_S_ID IN (SELECT MAX(CUR_PGM_CHNG_S_ID) FROM PGM_RPLCMNT_PART WHERE
PGM_S_ID = global_pgm_s_id AND PART_ROW_S_ID = global_part_row_s_id
GROUP BY PART_ROW_S_ID);
OPEN part_list_init_cursor;
FETCH part_list_init_cursor
BULK COLLECT INTO found_parts_list;
-- Add the existing part to the found list
found_parts_list.EXTEND;
found_parts_list(1) := local_part_record;
driver_chng_s_id := local_part_record.prior_pgm_chng_s_id;
num_parts := 1;
is_more_parts := TRUE;
WHILE (is_more_parts) LOOP
retVal := getPriorPart(driver_chng_s_id,local_part_record);
IF (retVal != -1) THEN
found_parts_list.EXTEND;
num_parts := num_parts + 1;
found_parts_list(num_parts) := local_part_record;
driver_chng_s_id := local_part_record.prior_pgm_chng_s_id;
ELSE
is_more_parts := FALSE;
END IF;
END LOOP;
--num_parts := getComment(found_parts_list,comments);
OPEN init_cursor;
FETCH init_cursor
BULK COLLECT INTO returnPartnumberlist;
num_parts := found_parts_list.COUNT;
FOR iloopCounter IN 1 .. num_parts
LOOP
returnPartnumberlist.EXTEND;
returnPartnumberlist(iloopCounter) := found_parts_list(iloopCounter).prior_part_row_id;
END LOOP;
retPartnumberlist := returnPartnumberlist;
open
* partnumber_cursorlist for select PR_PART_ROW_S_ID from TABLE(CAST(retPartnumberlist AS historical_commentz.partnumberlist));*
DBMS_OUTPUT.put_line('Done....!');
EXCEPTION
some code..............................
END getComments;
END HISTORICAL_COMMENTZ;
/ -
I am facing ora-06508 error while using webutil. Have done all setup as per "How to Configure Webutil in Forms 11g ".
Error on following statement "Client_OLE2.create_obj('Excel.Application')"
FRM-40375, ORA-06508.
Waiting for Help.
Thanks;
Edited by: umairm on Apr 20, 2012 10:16 AMHi
It is mentioned in webutil doc that, you must regenerate webutil.pll before using it; otherwise you’ll encounter error ORA-06508 when running a form with the attached library.
Hope this helps...
Regards,
Amatu Allah -
ORA-02266: unique/primary keys - error while using Exchange Partition
Hi All,
While using EXCHANGE PARTITION statement as given below,
ALTER TABLE SOURCE_TABLE EXCHANGE PARTITION PRT_EXCG_PRTN WITH TABLE TARGET_TABLE
we are getting this error,
ORA-02266: unique/primary keys in table referenced by enabled foreign keys
However, there are no tables have foreign keys referring this TARGET_TABLE, we checked this by referring
USER_CONSTRAINTS table, it has only primary key and NOT NULL constraints.
SELECT * FROM USER_CONSTRAINTS WHERE TABLE_NAME like 'TARGET_TABLE';
We are using the following version,
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 IBM/AIX RISC System/6000: Version 9.2.0.6.0 - Production
NLSRTL Version 9.2.0.6.0 - Production
Is it due to any error in our end or it could be a bug in Oracle and should we go for any patch updation ?
Please guide us to resolve this error as soon as possible, thank you.
Regards,
Deva*** Duplicate Post ***
Please Ignore. -
Encountering ORA-39000: bad dump file specification while using datapump
Hello,
I am trying to use datapump to take a export of a schema(Meta_data only). However, I want the dump file to be named after the date & time of the export taken.
When i use the following command -- the job runs perfectly.
expdp system@***** dumpfile=expdp-`date '+%d%m%Y_%H%M%S'`.dmp directory=EXP_DP logfile=expdp-`date '+%d%m%Y_%H%M%S'`.log SCHEMAS=MARTMGR CONTENT=METADATA_ONLY
However, I want to run the export using an parfile. but if use the below parfile, i am encountering the following errors.
USERID=system@*****
DIRECTORY=EXP_DP
SCHEMAS=TEST
dumpfile=expdp-`date '+%d%m%Y_%H%M%S'`
LOGFILE=MARTMGR.log
CONTENT=METADATA_ONLY
expdp parfile=martmgr.par
Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production
With the Partitioning option
ORA-39001: invalid argument value
ORA-39000: bad dump file specification
ORA-39157: error appending extension to file "expdp-`date '+%d%m%Y_%H%M%S'`"
ORA-07225: sldext: translation error, unable to expand file name.
Additional information: 7217
How do i append date&time to the dumpfile name when using a parfile.
Thanks
RohitI got the below error while using the dumpfile parameter as dumpfile=dump_$export_date.dmp
Export: Release 11.2.0.2.0 - Production on Thu Feb 7 16:46:22 2013
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production
With the Partitioning option
ORA-39001: invalid argument value
ORA-39000: bad dump file specification
ORA-39157: error appending extension to file "dump_$export_date.dmp"
ORA-07225: sldext: translation error, unable to expand file name.
Additional information: 7217
Script i used is as follows
export ORACLE_HOME=/orcl01/app/oracle/product/11.2.0.2
export ORACLE_SID=$1
export PATH=$PATH:$ORACLE_HOME/bin
echo $ORACLE_HOME
export export_date=`date '+%d%m%Y_%H%M%S'`
echo $export_date
expdp parfile=$2
parfile is
DIRECTORY=EXP_DP
SCHEMAS=MARTMGR
dumpfile=dump_$export_date.dmp
LOGFILE=MARTMGR.log
CONTENT=METADATA_ONLY
Maybe you are looking for
-
Error by patching of SAP NetWeaver with Oracle on Windows
Hi! I am about to patch my SAP system (SAP NetWeaver 04S) with Oracle on Windows. The following error occurs: Import phase 'CHECK_REQUIREMENTS' (05.02.2008, 16:00:39) Error during executing the tp command 'tp CONNECT B11 ...' tp return code: '0232'
-
Adobe CS5 Student Edition won't install
I have the Adobe CS5 Student Edition which I purchased in 2009. When I try to open Photoshop it said there is not enough space on my scratch disk. I have uninstalled CS5 to try to fix this and would now like to re-install it however the serial number
-
I am not touching it at all, the phone is just powering itself up until it shows the apple logo on the screen, then it turns itself off, and repeats.
-
Handoff is turned off on both phones and both phones only have their own number checked under send and receive from. Please help.
-
Dispalying billing address in PO smartform
HI, I made Z smart form from standard PO form /SMB40/MMPO_L. I have following instructions: based on the compnay code.. u goto T001 , get the Address number... then go to ADRC table.. to get the address in tables ADR12 & ADR5.. u will get the FAX & W