URGENT : ORA 302000 when using TEXT_IO.fopen
Hi,
I get this error ORA 302000 when using TEXT_IO package, the code I use is
new_file:=text_io.fopen('c:\text.txt','r')
i don't have the description of this ORA 302000 , pls does anyone have it?
Hi,
I know it's been 2 years but it's still up to date for me.
I tried the suggested piece of code to trace the error but it did not bring anything more
EXCEPTION
When Others then
srw.Message( 2, 'EXCEPTION ' || SQLCODE || ' in common package. Can not open the file ');
IF SQLCODE = -302000 then
LOOP
EXIT WHEN TOOL_ERR.NERRORS = 0;
SRW.MESSAGE( 667, TO_CHAR(TOOL_ERR.CODE) || ': ' || TOOL_ERR.MESSAGE);
TOOL_ERR.POP;
END LOOP;
END IF;
srw.Message( 3, 'EXCEPTION ' || SQLCODE || ' in com package. Can not open the file ' || I_Desname || ' : ' || SQLERRM );
Only Message 2 and 3 are displayed in the trace file
Any other suggestion?
Manu
Similar Messages
-
Error ORA-06502 When using function REPLACE in PL/SQL
Hi,
I have a PL/SQL procedure which gives error 'Error ORA-06502 When using function REPLACE in PL/SQL' when the string value is quite long (I noticed this with a string 9K in length)
variable var_a is of type CLOB
and the assignment statement where it gives the error is
var_a := REPLACE(var_a, '^', ''',''');
Can anyone please help!
ThanksEven then that shouldn't do so:
SQL> select overload, position, argument_name, data_type, in_out
2 from all_arguments
3 where package_name = 'STANDARD'
4 and object_name = 'LPAD'
5 order by 1,2
6 /
OVERLOAD POSITION ARGUMENT_NAME DATA_TYPE IN_OUT
1 0 VARCHAR2 OUT
1 1 STR1 VARCHAR2 IN
1 2 LEN BINARY_INTEGER IN
1 3 PAD VARCHAR2 IN
2 0 VARCHAR2 OUT
2 1 STR1 VARCHAR2 IN
2 2 LEN BINARY_INTEGER IN
3 0 CLOB OUT
3 1 STR1 CLOB IN
3 2 LEN NUMBER IN
3 3 PAD CLOB IN
4 0 CLOB OUT
4 1 STR1 CLOB IN
4 2 LEN NUMBER INI wonder what happened? -
ORA-302000 Error On client_text_io.fopen()
i am using a webutil library - client_text_io.fopen() on the form that was compiled on 10.1.2.3 version and this webutil_file.file_selection_dialog() built-in package. the webutil_file.file_selection_dialog() works but not the client_text_io.fopen(). when the form is run on the application server it is getting this error ORA-302000.
PROCEDURE prc_load_proj_alloc_data IS
vFilename VARCHAR2(100) := :control.drv_filename;
vInputFile client_text_io.FILE_TYPE;
vLinebuf VARCHAR2(2000);
vCommaPosition NUMBER := 0;
TYPE array_type IS VARRAY(10) OF VARCHAR2(100);
vColumn array_type := array_type('');
vCtr BINARY_INTEGER := 1;
vRowCtr number := 0;
vLineLoadCnt number := 0;
begin
-- cursor must be placed on the block
go_block('MRC_PROJ_ALLOC_INTERFACE');
go_item('MRC_PROJ_ALLOC_INTERFACE.ATTRIBUTE1');
--extend and initialize the array to 9 columns
vColumn.EXTEND(9,1);
-- open the file for reading
begin
vInputFile := client_text_io.fopen(vFilename,'r');
exception
when others then
alertme('note','SQLCODE '||SQLCODE);
if SQLCODE = -302000 then
alertme('note',errtyp||'-'||TO_CHAR(errnum)||': '||errtxt);
loop
alertme('note',TO_CHAR(TOOL_ERR.CODE) || ': ' || TOOL_ERR.MESSAGE);
TOOL_ERR.POP;
exit when TOOL_ERR.NERRORS = 0;
end loop;
end if;
end;
end;
the file that i am trying to read is in csv format and is not currently in use. i tried any other file from my local C:\ or D:\ drive and i am getting the same error. what could possiblly that i am missing? thanks.we figured it out that the cause of issue was that the webutil.plx was on our application executable directory. basically we have the webutil.plx on a common directory applicable to other application and when we removed the webutil.plx on our application directory the ORA-302000 error was solved.
-
ORA-03113 when using connect by in a report query ?
Hi,
Oracle 10g r2, ApEx 4.0.2.
I have a classic report on page zero, I need the following query to display my data :
select
distinct '<input class="radio_report_search_photos" name="radio_selected_photo" type="radio" />' as "Sel",
phot_id,
phot_description,
'<img alt="" id="thumb_'||phot_id||'" class="clickable_thumb" src="#OWNER#.show_photo?v_id_photo='||phot_id||'" />' as "Thumb",
substr(SYS_CONNECT_BY_PATH(kw_text, ', '),3) keyword_list
from
select
phot_id,
phot_description,
kw_id,
kw_text,
pkw_kw_id,
pkw_phot_id,
count(*) OVER(partition by phot_id ) cnt,
ROW_NUMBER() OVER(partition by phot_id order by kw_text) seq
from
photos,
photos_keywords,
keywords
where
phot_id = pkw_phot_id
and pkw_kw_id = kw_id
and contains(kw_text,nvl(:P0_SEARCH_PHOTO_KW,'%')) > 0
where
seq = cnt
start with
seq = 1
connect by prior
seq+1 = seq
and prior
phot_id = phot_idIt works great when executing from any software. I get the expected results.
But yhen I try to put it in the report region source, I get an ORA-03113 when I apply changes...
It works if I remove CONNECT BY PRIOR and SYS_CONNECT_BY_PATH from the query.
Why ?
Thanks.
Details :
url : https://my_host.ch/pls/htmldb_dev/wwv_flow.accept
Error :
Fri, 22 Jul 2011 09:25:38 GMT
ORA-03113: end-of-file on communication channelOK I now use xmlagg & xmlelement instead of connect by.
Sorry for not providing any solution.
Yann. -
ORA-01194 and ORA-00604 when using backup controlfile set #2
Database version Oracle 11.2.0.1
Enterprise Linux 5.4
Database is in archivelog mode.
I'm trying to recover a database according to set #2 of a backup controlfile to trace. Creating the controlfile works fine, but recovering the database fails.
From what I can gather, the recovery fails because it cannot roll forward - sequence 39 is in the missing online redo logfile. However, the database is opened with the restlogs option, and I understand that it should use the archivelogs in order to roll backwards. Since this is a new controlfile it does not know about archivelogs, but it does not accept to register or use any archivelog files.
The recovery as outlined in set #2 does not seem to work as advertised. Any ideas?
Following errors:
SQL> CREATE CONTROLFILE REUSE DATABASE "RCAT" RESETLOGS ARCHIVELOG etc.
Control file created.
Tyring to register on of the archivelogs does not work:
SQL> ALTER DATABASE REGISTER LOGFILE '/u02/fra/RCAT/archivelog/2010_09_19/o1_mf_1_33_69bfo5tx_.arc';
ALTER DATABASE REGISTER LOGFILE '/u02/fra/RCAT/archivelog/2010_09_19/o1_mf_1_33_69bfo5tx_.arc'
ERROR at line 1:
ORA-00604: error occurred at recursive SQL level
Applying an existing archivelog during recovery does not work:
SQL> recover database using backup controlfile until cancel
Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
/u02/fra/RCAT/archivelog/2010_09_19/o1_mf_1_33_69bfo5tx_.arc
ORA-00310: archived log contains sequence 33; sequence 39 required
ORA-00334: archived log:
'/u02/fra/RCAT/archivelog/2010_09_19/o1_mf_1_33_69bfo5tx_.arc'
ORA-01547: warning: RECOVER succeeded but OPEN RESETLOGS would get error below
ORA-01194: file 1 needs more recovery to be consistent
ORA-01110: data file 1: '/u02/RCAT/datafile/o1_mf_system_6959kz7l_.dbf'
ls -l /u02/fra/RCAT/archivelog/2010_09_19:
-rw-r----- 1 oracle dba 49313280 Sep 19 00:01 o1_mf_1_33_69bfo5tx_.arc
-rw-r----- 1 oracle dba 312320 Sep 19 00:03 o1_mf_1_34_69bft63b_.arc
-rw-r----- 1 oracle dba 20343808 Sep 19 02:10 o1_mf_1_35_69bo6y6j_.arc
-rw-r----- 1 oracle dba 40960 Sep 19 02:12 o1_mf_1_36_69boc9t8_.arc
-rw-r----- 1 oracle dba 20992 Sep 19 02:13 o1_mf_1_37_69bofng4_.arc
-rw-r----- 1 oracle dba 794624 Sep 19 02:15 o1_mf_1_38_69bokwbf_.arcThanks,
MarkusSpecifying sequence 39 results in the same error message, which is what is what it tries to apply when using "recover until cancel" and typing cancel. But the problem is that sequence 39 was in the online redologs, which were not archived yet.
SQL> select name, first_change#,next_change# from v$archived_log;
NAME FIRST_CHANGE# NEXT_CHANGE#
/u02/fra/RCAT/archivelog/2010_09_19/o1_mf_1_34_69bft63b_.arc 1259096 1259295
/u02/fra/RCAT/archivelog/2010_09_19/o1_mf_1_37_69bofng4_.arc 1269876 1269935
/u02/fra/RCAT/archivelog/2010_09_19/o1_mf_1_35_69bo6y6j_.arc 1259295 1269766
/u02/fra/RCAT/archivelog/2010_09_19/o1_mf_1_36_69boc9t8_.arc 1269766 1269876
/u02/fra/RCAT/archivelog/2010_09_19/o1_mf_1_38_69bokwbf_.arc 1269935 1270557
/u02/fra/RCAT/archivelog/2010_09_19/o1_mf_1_33_69bfo5tx_.arc 1241003 1259096
/u02/fra/RCAT/archivelog/2010_09_18/o1_mf_1_21_699l4tkj_.arc 1215727 1215730
/u02/fra/RCAT/archivelog/2010_09_18/o1_mf_1_24_699s5pj8_.arc 1215736 1224966
/u02/fra/RCAT/archivelog/2010_09_18/o1_mf_1_26_699s5rp4_.arc 1224969 1224972
/u02/fra/RCAT/archivelog/2010_09_18/o1_mf_1_15_6987rbqp_.arc 1174393 1174511
/u02/fra/RCAT/archivelog/2010_09_18/o1_mf_1_23_699l4xng_.arc 1215733 1215736
NAME FIRST_CHANGE# NEXT_CHANGE#
/u02/fra/RCAT/archivelog/2010_09_18/o1_mf_1_28_699s5tqt_.arc 1224975 1224987
/u02/fra/RCAT/archivelog/2010_09_18/o1_mf_1_22_699l4w5r_.arc 1215730 1215733
/u02/fra/RCAT/archivelog/2010_09_18/o1_mf_1_29_699s5vw2_.arc 1224987 1224990
/u02/fra/RCAT/archivelog/2010_09_18/o1_mf_1_19_699l4or0_.arc 1215721 1215724
/u02/fra/RCAT/archivelog/2010_09_18/o1_mf_1_25_699s5qd6_.arc 1224966 1224969
/u02/fra/RCAT/archivelog/2010_09_18/o1_mf_1_30_699s5yvs_.arc 1224990 1224999
/u02/fra/RCAT/archivelog/2010_09_18/o1_mf_1_27_699s5stf_.arc 1224972 1224975
/u02/fra/RCAT/archivelog/2010_09_18/o1_mf_1_32_69b2hgvz_.arc 1225003 1241003
/u02/fra/RCAT/archivelog/2010_09_18/o1_mf_1_17_699k5oxl_.arc 1194778 1209476
/u02/fra/RCAT/archivelog/2010_09_18/o1_mf_1_16_699jsxol_.arc 1174511 1194778
/u02/fra/RCAT/archivelog/2010_09_18/o1_mf_1_20_699l4rx2_.arc 1215724 1215727
NAME FIRST_CHANGE# NEXT_CHANGE#
/u02/fra/RCAT/archivelog/2010_09_18/o1_mf_1_18_699l4msq_.arc 1209476 1215721
/u02/fra/RCAT/archivelog/2010_09_18/o1_mf_1_14_6987mljx_.arc 1162149 1174393
/u02/fra/RCAT/archivelog/2010_09_18/o1_mf_1_31_699s61sr_.arc 1224999 1225003
25 rows selectedHow does it actually know about all the archivelogs?
Edited by: Markus Waldorf on Sep 20, 2010 8:37 AM -
ORA-15072 when using external redenacy?
Hello -
I am getting ORA-15072 (command required at least one failure groups) when using external redundancy. I am using asmlib on Linux, and I have a feeling that it it a multipathing issue. Here are the output from some of my commands:
[root@ctolinuxpoc01 init.d]# ./oracleasm listdisks
VOL1
VOL10
VOL11
VOL12
VOL2
VOL3
VOL4
VOL5
VOL6
VOL7
VOL8
VOL9
SQL> select name, path, state from v$asm_disk;
NAME
PATH
STATE
ORCL:VOL1
NORMAL
ORCL:VOL2
NORMAL
NAME
PATH
STATE
ORCL:VOL3
NORMAL
ORCL:VOL4
NAME
PATH
STATE
NORMAL
Why would I be getting ORA-15072 with external redundancy (using asmlib)?
Thanks in andvance!
MikeThe header status is showing as "unknown"... Could this be part of the issue?
Thanks,
Mike -
Sqlldr producing ora-1008 when using conventional mode
On 9.2.0.8 Solaris 9,
When performing the load using direct mode it works. only when using conventional mode i get the error.
any ideas?
10x,Don't use reserved words (CHAR,which is a format specification) as column names:
http://download.oracle.com/docs/cd/E11882_01/server.112/e22490/ldr_field_list.htm#i1015797 -
ORA-24801 when using Dataset.Fill
I'm getting and exception ORA-24801 when I call the Dataset Fill method as per the following example.
The stored procedure takes 3 parameters. This error does not occur when calling another procedure which does not return CLOBs. Any ideas ??
oCommand.CommandText = "JBS_REPORT_002.Build";
oCommand.CommandType = CommandType.StoredProcedure;
OracleDataAdapter da = new OracleDataAdapter(oCommand);
OracleCommandBuilder builder = new OracleCommandBuilder(da);
DataSet ds = new DataSet();
da.Fill(ds);
Database is 8.1.7Thanks for the reply.
firstly we have not tried on 9.2 and this is not an option.
Secondly the problem can be replicated without a stored procedure as per follows. If there is a CLOB field it fails.
string commandStr = "SELECT * FROM MYTABLE";
OracleDataAdapter adapter = new OracleDataAdapter (commandStr, conn);
try
OracleCommandBuilder builder = new OracleCommandBuilder(adapter);
DataSet ds = new DataSet();
adapter.Fill(ds,"MYTABLE");
catch(OracleException e){} -
ORA-02374 ORA-12899 ORA-02327 when using impdb PLZ HELP!!
Hi All,
I am getting the following error when i am using impdp
ORA-02374: conversion error loading table "STAGING1"."REGBAS_STG"
ORA-12899: value too large for column ARAB_FAM_NAME (actual: 95, maximum: 88)
ORA-02327: data for row: ARAB_FAM_NAME : 0X'BFBFBFBFEABFEA202020202020202020202020202020202020'The export was taken from a oracle 11 g r2 database 64 bit database and i am importing it to oracle 11g r2 database which is 32bit, could this be causing this error?
can i create the structure of the table without loading the data and then edit this particular feild and increase it, and then load the data so that it i can avoid this error.
this is quite urgent and if i can import other tables except this, that will also be good, will work on this issue after importing all the other tables,
thanks,The export was taken from a oracle 11 g r2 database 64 bit database and i am importing it to oracle 11g r2 database which is 32bit, could this be causing this error?Absolute nonsense!
One database could use double-byte characters (the source) and the other single-byte characters.
can i create the structure of the table without loading the data and then edit this particular feild and increase it, and then load the data so that it i can avoid this error.Tables don't have fields. And you are jumping to conclusion. You may have an arab_fam_name of varchar2(.. bytes) in one database and varchar2(.. char) in the other.
this is quite urgent and if i can import other tables except this, that will also be good, will work on this issue after importing all the other tables,You are posting in a forum of volunteers. This means it is not urgent and your use of the word 'urgent' must be qualified as rude.
Also this is not a support forum.
No regards
Sybrand Bakker
Senior Oracle DBA -
ORA-12154 when using Database Link
We're running 11r2 on our servers. I have a primary db and a standby db, using Data Guard. The standby is open for read-only querying. We are not using ASM.
The primary (and thus the standby) have a PUBLIC database link to a third db server.
When I run a query against the database link on the primary: select * from test@MyDBlink; Everything works fine.
When I run the same query against the database link on the standby: select * from test@MyDBlink; I get ORA-12154: TNS:could not resolve the connect identifier.
I check that the db link exists on the standby. It does.
I go to command prompt on the standby and run "tnsping MyDBlink". It executes fine. It says "Used TNSNAMES adapater to resolve the alias" and sure enough, MyDBlink is referenced in the TNSNAMES.ORA.
I also run "tnsping IP-of-MyDBlink" to doublecheck. No issues.
What is going on that is blocking the db link on the standby? Many reports utilize that standby and I'd hate to deny them the functionality of a db link.
Thanks893968 wrote:
We're running 11r2 on our servers. I have a primary db and a standby db, using Data Guard. The standby is open for read-only querying. We are not using ASM.
The primary (and thus the standby) have a PUBLIC database link to a third db server.
When I run a query against the database link on the primary: select * from test@MyDBlink; Everything works fine.
When I run the same query against the database link on the standby: select * from test@MyDBlink; I get ORA-12154: TNS:could not resolve the connect identifier.
I check that the db link exists on the standby. It does.
I go to command prompt on the standby and run "tnsping MyDBlink". It executes fine. It says "Used TNSNAMES adapater to resolve the alias" and sure enough, MyDBlink is referenced in the TNSNAMES.ORA.
I also run "tnsping IP-of-MyDBlink" to doublecheck. No issues.
What is going on that is blocking the db link on the standby? Many reports utilize that standby and I'd hate to deny them the functionality of a db link.
ThanksMost people with this problem don't understand that the dblink is just another client, no different than sqplus running on the same machine - and therefore the link uses the tnsames in the ORACLE_HOME of the database containing the link. But it seems from the steps you've described that you've grasped that. The only thing I can think of off the top of my head is when you try sqlplus from the standby server you are hitting a different tnsnames than the one the database is using. -
ORA-06512 when using DBMS_DATAPUMP.OPEN
Hi,
we're using 10.2.0.3 SE1 on 32 Bit XP Prof. with SP2 and are trying to use dbms_datapump over the network.
When we call the OPEN procedure within a Package we get a
ORA-31626: job does not exist
ORA-06512: at "SYS.DBMS_SYS_ERROR", line 79
ORA-06512: at "SYS.KUPV$FT_INT", line 430
ORA-31638: cannot attach to job SNAPSHOT_JOB for user PHX_SYNC_DZ
ORA-31632: master table "PHX_SYNC_DZ.SNAPSHOT_JOB" not found, invalid, or inaccessible;
ORA-00942: table or view not foundWhen we use an anonymous pl/sql block the open works.
The User phx_sync_dz has been granted imp_full_database and exp_full_database.
Does anyone know a solution for that?
DimI found the solution. DDL rights have been granted by roles. So the user had simply not the rights to create the create the Mastertable.
A grant create table was enough and it worked.
Dim -
ORA-06502 When using MAX(Column) with %TYPE
Hi Guys,
Just had this discussion on the main database forums, and the problem was somewhat resolved. But they did ask me to check here if this was a known issue.
Assuming I have a table defined as follows
CREATE TABLE TEST_TABLE (TEST_COLUMN CHAR(8 BYTE)) ;and the table only has a single record NZ07100S
We also define a function as
CREATE OR REPLACE FUNCTION
FUNCTION GETTESTVALUE
RETURN TEST_TABLE.TEST_COLUMN%TYPE
IS
TEST_VALUE TEST_TABLE.TEST_COLUMN%TYPE;
BEGIN
SELECT MAX(TEST_COLUMN) INTO TEST_VALUE FROM TEST_TABLE;
RETURN TEST_VALUE;
END;We ran the following command
SELECT GETTESTVALUE FROM DUAL;and receive an error as follows
Error report:
SQL Error: ORA-06502: PL/SQL: numeric or value error: character string buffer too small
ORA-06512: at "GETTESTVALUE", line 6
06502. 00000 - "PL/SQL: numeric or value error%s"However, if were to modify the function to the following
CREATE OR REPLACE FUNCTION
FUNCTION GETTESTVALUE
RETURN TEST_TABLE.TEST_COLUMN%TYPE
IS
TEST_VALUE TEST_TABLE.TEST_COLUMN%TYPE;
BEGIN
SELECT TEST_COLUMN INTO TEST_VALUE FROM TEST_TABLE;
RETURN TEST_VALUE;
END;There is no error reported and the value NZ07100S is returned.
Of course, when we modified the function to be
CREATE OR REPLACE FUNCTION
FUNCTION GETTESTVALUE
RETURN TEST_TABLE.TEST_COLUMN%TYPE
IS
TEST_VALUE TEST_TABLE.TEST_COLUMN%TYPE;
BEGIN
SELECT CAST(MAX(TEST_COLUMN) AS CHAR(8))INTO TEST_VALUE FROM TEST_TABLE;
RETURN TEST_VALUE;
END;No errors are reported, and the value is returned
Some of the guys in the main forums tried this out on Enterprise edition and did not encounter any issues. To faciliate their testing, I spooled the sqlsplus output and it is as follows
SQL> select * from v$version;
BANNER
Oracle Database 10g Express Edition Release 10.2.0.1.0 - Product
PL/SQL Release 10.2.0.1.0 - Production
CORE 10.2.0.1.0 Production
TNS for Linux: Version 10.2.0.1.0 - Production
NLSRTL Version 10.2.0.1.0 - Production
SQL> create table test_table (test_column char(8 byte));
Table created.
SQL> insert into test_table
2 values ('NZ07100S');
1 row created.
SQL> commit
2 /
Commit complete.
SQL> create or replace function gettestvalue
2 return test_table.test_column%type
3 is
4 test_value test_table.test_column%type;
5 begin
6 select max(test_column) into test_value from test_table;
7 return test_value;
8 end;
9 /
Function created.
SQL> select gettestvalue from dual
2 /
select gettestvalue from dual
ERROR at line 1:
ORA-06502: PL/SQL: numeric or value error: character string buffer too small
ORA-06512: at "JEGA.GETTESTVALUE", line 6
SQL> spool offAt the request of one of the posters, the following was also executed.
SQL> select lengthb (TEST_COLUMN)
2 from test_table
3 where test_column = 'NZ07100S'
4 /
LENGTHB(TEST_COLUMN)
8
SQL> select max (lengthb (test_column))
2 from test_table
3 /
MAX(LENGTHB(TEST_COLUMN))
8The eventual solution that made this piece of code work on XE was as follows
SQL> alter table test_table modify test_column varchar2 (8 byte);
Table altered.
SQL> select gettestvalue from dual;
GETTESTVALUE
NZ07100S
SQL> spool off;Now, I can't change the production (Enterprise Edition) schema. The XE is being used by the developers for their local testing. As such, knowing that the problem does not occur on Enterprise, I can ask them to make the changes locally to their XE for their local testing.
However, I was just wondering, does anyone know if this is a known issue with Oracle XE ??
Thanks and regards
JegaHi Jega,
thank you for your post.
Don't know is this issue XE release specific issue or 10.2.0.1 generally?
Anyway, already 10.2.0.3 is patched - as you can see, even selecting from XE through PE102030 working OK:
SQL> select * from v$version;
BANNER
Personal Oracle Database 10g Release 10.2.0.3.0 - Production
PL/SQL Release 10.2.0.3.0 - Production
CORE 10.2.0.3.0 Production
TNS for 32-bit Windows: Version 10.2.0.3.0 - Production
NLSRTL Version 10.2.0.3.0 - Production
SQL> CREATE TABLE TEST_TABLE (TEST_COLUMN CHAR(8 BYTE)) ;
Table created.
SQL> CREATE OR REPLACE FUNCTION gettestvalue
2 RETURN TEST_TABLE.TEST_COLUMN%TYPE
3 IS
4 TEST_VALUE TEST_TABLE.TEST_COLUMN%TYPE;
5 BEGIN
6 SELECT MAX(TEST_COLUMN) INTO TEST_VALUE FROM TEST_TABLE;
7 RETURN TEST_VALUE;
8 END;
9 /
Function created.
SQL> insert into test_table
2 values ('NZ07100S');
1 row created.
SQL> SELECT GETTESTVALUE FROM DUAL;
GETTESTVALUE
NZ07100S
SQL> CREATE OR REPLACE FUNCTION gettestvalue_from_xe
2 RETURN TEST_TABLE.TEST_COLUMN%TYPE
3 IS
4 TEST_VALUE TEST_TABLE.TEST_COLUMN%TYPE;
5 BEGIN
6 SELECT MAX(TEST_COLUMN) INTO TEST_VALUE FROM HR.TEST_TABLE@XE_LINK;
7 RETURN TEST_VALUE;
8 END;
9 /
Function created.
SQL> SELECT GETTESTVALUE_FROM_XE FROM DUAL;
GETTESTVALUE_FROM_XE
NZ07100S
SQL> conn hr/hr_password@xe
Connected.
SQL> SELECT GETTESTVALUE FROM DUAL;
SELECT GETTESTVALUE FROM DUAL
ERROR at line 1:
ORA-06502: PL/SQL: numeric or value error: character string buffer too small
ORA-06512: at "HR.GETTESTVALUE", line 7
SQL> select * from v$version;
BANNER
Oracle Database 10g Express Edition Release 10.2.0.1.0 - Product
PL/SQL Release 10.2.0.1.0 - Production
CORE 10.2.0.1.0 Production
TNS for 32-bit Windows: Version 10.2.0.1.0 - Production
NLSRTL Version 10.2.0.1.0 - Production
SQL>Note: XE_LINK is database link pointing from my PE instance to XE instance. -
Message error ORA-00936 when using JDBC adapter
Hi all,
I'm using the folow scenario:
RFC --> XI --> JDBC
RFC <-- XI <-- JDBC (response)
It's a SYNCHRONOUS interface.
RFC call without COMMIT WORK:
CALL FUNCTION 'Y_TESTE_NEI'
DESTINATION 'RFC_XI'
EXPORTING
DATE_FROM = v_data_from
DATE_TO = v_data_to
TABLES
t_return = t_dados.
I'm not using KEY in JDBC message, because for test I want to get entiry table, and I set the communication channel JDBC to KEY not mandatory.
I'm not having mapping error, in SXMB_MONI I can see the two messages of interface, but both with SYSTEM ERROR.
In JDBC adapter in Runtime Workbench apears the follow message error:
com.sap.aii.af.ra.ms.api.DeliveryException: Error processing request in sax parser: Error when executing statement for table/stored proc. 't7_productionorder' (structure 't7_productionorder'): java.sql.SQLException: ORA-00936: missing expression
And DUMP in function call in R/3: CALL_FUNCTION_REMOTE_ERROR
Could anyone help me about this problem ?
Thanks in advance.
Regis FerratoHi Regis,
I did the same scenario just now. The error you get is, you need to check whether the fields you are entering into the database have correct datatypes.
Check out your database structure with your structure in XI, and also test in Message Mapping, to make sure you are sending correct values.
In my case I was sending date like this '10-12-06', but my DB accepts only '101206'. So I removed the '-'. It was fine .
The Dumping error is not due to your ABAP, due to the DB operation.
Let me know Whether I am correct.
Raj. -
Ora 02290 when using qms_transaction_mgt and autonomous transactions
Hi all,
I'm using the qms procedures:
qms_transaction_mgt for openeing and closing transactions.
Somewhere in my procedure when the transaction is opened i call another procedure which contains a autonomous transaction.
The next time qms_transaction_mgt.close_transaction is called i get an ORA-02290: check constraint (HST65.QMS_NEED_TO_CLOSE_TRANSACTION) violated
When i debug the qms_transaction_mgt.close transaction the g_current_trans_id variable is empty, which indicates the transaction is allready closed.
When i remove the pragma autonomous_transaction statement and the commit statement from the procedure i call, the problem is resolved.
Version information:
Designer 9.0.2 with a with a Oracle 9i 9.2 database and Headstart 9i.
Does anybody know how i can resolve this or if this is a bug and how to fix it?
Thanks,
YvonIan, Yvon,
It is unfortunately a know restriction that the CDM RuleFrame component of both Headstart for Designer 6i and Headstart for Designer 9i doesn't work in combination with autonomous transactions.
The reason is that the RuleFrame administration relies on information stored in 1. pl/sql package variables and 2. database tables. Using autonomous transactions (that involve CDM RuleFramed DML) causes this information to dissynchronize.
A year ago I investigated the possibilities to make autonomous transactions possible with RuleFrame but unfortunately this is fundamental problem: RuleFrame wants to combine multiple DML-actions into one logical transaction (gards this with the "need_to_close_transaction" constraint), while autonomous transactions intend to to the opposite: commit a part of a transaction while the rest of the transaction still is posted/not committed.
There is one exception: if you call an atonomous procedure that does DML on a non-ruleframe-enabled table (no TAPI triggers that intend to open/close the transaction, no CAPI etc), everything functions.
Problem explanation:
====================
1. Outer transaction is opened (by front end or TAPI triggers of first DML)
2. DML takes place
3. Autonomous transaction-procedure is called
4. Auto-transaction again tries (and succeeds!) to open the transaction, it doesn't see that the transaction is opened (db table qms_transactions is empty for the autonomous transaction on query)
5. DML within auto-transaction is posted
6. Auto-transaction closes transaction
7. Auto-transaction is committed
8. Outer transaction thinks the transaction is already closed, because the auto-transaction cleaned out the package variables when it closed the transaction.
9. Commit of the outer transaction fails as the deferred check constraint need_to_close_transaction avoids this to happen (rollback takes place because of this violation).
Hope this helps
Kind Regards
Marc Vahsen
Headstart Team Oracle NL -
ORA-03113 when using references in xmltype
I get an 'ORA-03113: end-of-file on communication channel' if I try to use references in an xml schema on multiple levels. You can find an example below.
Setup:
exec dbms_session.reset_package;
declare
l_schema varchar2(32767) :='<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="qualified"
elementFormDefault="qualified"
version="1.0"
xmlns:xdb="http://xmlns.oracle.com/xdb"
xdb:storeVarrayAsTable="false"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="T_NODE" xdb:SQLType="T_NODE">
<xs:sequence>
<xs:element name="NODE" type="T_NODE"/>
<xs:element name="LEVEL" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="NODE" type="T_NODE" xdb:defaultTable="T_NODE_REF"/>
</xs:schema>';
l_xml xmltype;
l_url varchar2(1000) := 'NodeTest.xsd';
begin
begin
execute immediate 'drop table T_NODE_REF';
exception
when others then null;
end;
begin
execute immediate 'drop table T_NODE_XML';
exception
when others then null;
end;
begin
dbms_xmlschema.deleteschema(
schemaurl => l_url
,delete_option => dbms_xmlschema.delete_cascade_force
exception
when others then null;
end;
l_xml := xmltype.createxml(l_schema);
dbms_xmlschema.registerschema (schemaurl => l_url
,schemadoc => l_xml
,gentables => true
execute immediate 'CREATE TABLE T_NODE_XML OF XMLTYPE XMLTYPE STORE AS OBJECT RELATIONAL XMLSCHEMA "' || l_url || '" ELEMENT "NODE"';
end;
The script:
declare
l_reference ref xmltype;
function rec(
i_level pls_integer
) return ref xmltype
is
l_url varchar2(1000) := 'NodeTest.xsd';
l_ref ref xmltype := null;
l_new_ref ref xmltype := null;
l_node t_node;
l_level pls_integer;
l_node_xml xmltype;
begin
if i_level > 0 then
l_level := i_level - 1;
l_ref := rec(l_level);
else
l_ref := null;
end if;
l_node := new t_node(null, l_ref, i_level);
l_node_xml := xmltype.createxml(xmlData => l_node, schema => l_url, element => 'NODE', validated => 1);
dbms_output.put_line(dbms_lob.substr(l_node_xml.getClobVal, amount => 200, offset => 1));
insert into T_NODE_XML t values(l_node_xml) returning ref(t) into l_new_ref;
commit;
return l_new_ref;
end;
begin
l_reference := rec(1);
end;
Any idea how to overcome this issue?
Thanks in advanceYour previous reply never said anything about commenting out dbms_output so how was I supposed to see the variations you were trying?<br><br>
You need to continue this discussion with Oracle as to why you getting the specific ORA-0600 that you are. This assumes you have a valid support contract. You are getting an internal Oracle error. I'm not Oracle nor do I know the inner workings of their system. If not, Google and maybe the XML DB forum might be able to help you with this issue. They will want to know your version (4 digits) and may question your hammer use of .delete_cascade_force when deleting the schema. This should only be a last resort to use that level I know. It's probably not related to your issue but may come up.
Maybe you are looking for
-
Sale order stock de-assigning.
Dear Gurus, Please address this scenario: Suppose I have a strategy which consumes from stock every time a sale order is raised. Imagine the situation that I have a stock of 50kg for a material and I receive a sale order for 30 kg, so automatically 3
-
How to get select query for crystal report in c# code
In C#, (Visual Studio 2008 ) I need to use the native Crystal Reports objects to get the complete SQL statement as it appears when you view it in Crystal Reports. In Crystal Reports 12.0, Go to "Database > Show SQL Query..." ... That is what I need t
-
Special Characters not being imported from standard text(SO10) to form
Hello Experts, I have created a standard text in SO10 and tried importing it to the adobe form, i created. I have maintained some sentences as highlighted and underlined. Text got imported perfectly on to the form, but the formatting is not being e
-
JDBC Ack Issue: CO_TXT_ROUTING_BACK_ERROR
Dear Experts, I have a SAP>XI>DB scenario. The record is succesfully inserted into the DB; but in RWB I am getting additional entries which failed. It seems to be some sort of Ack, which is not supported right now by my XI system. In SXMB_MONI; I am
-
I recently purchased CS2 premium from Amazon but I do not come with a serial number. How do I go about acquiring a serial number for the premium suite