Strange problem in executing procedure using dblink
I have this strange problem coming in the execution of a procedure accessed using dblink. I will try to explain the scenario. We have one procedure in our schema which is executed using a dblink from another database as we have a integration of systems. This was working fine but after we did a fresh export and import of this schema as we migrated our database to a new better configuration DB server, the execution of this procedure is hanging when it is executed from the dblink from the other database. I hope, I have been able to explain the scenario.
I hope, my question is clear.
Please, help in solving the doubt.
regards
No starting version number.
No current version number.
No indication of whether the link is valid and you can SELECT across it.
No error message of any kind.
Nothing from your alert log.
No indication of whether you have a global names issue.
Please do the research required to identify the nature of the problem, check the related docs at metalink, and if you still have a problem give us the rest of the story.
Then perhaps we can help you.
Similar Messages
-
Error in Executing Procedure through DBLink
Hi,
I am facing some problems in executing a procedure through DBLink.
I have two schema A and B in two different database.
In schema A I am having one procedure X in package Y and my requirement is that I want to execute this procedure in schema B. So in schema B i have created one DBLink ABC and trying to execute procedure X using this DB link.
begin
A.Y.X@ABC;
end;
But I am getting below error:
ORA-06550: line 2, column 1:
PLS-00201: identifier 'A.Y.X@ABC' must be declared
ORA-06550: line 2, column 1:
PL/SQL: Statement ignored
Any help would be greatly appreciated!
Thanks In Advance..
Regards,
Sachin BansalHi,
Yes, I am connecting to user A of DB1 and in this user I am having procedure X in Package Y. My DBLink in Schema B of DB2 is pointing to user A of DB1.
I have created DBLINK using below script:
create public database link abc
connect to A
identified by A
using '(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=XXX)(PORT=1521)))(CONNECT_DATA=(service_name=XXX)))';
Above DBLInk is working fine..I am able to access all the table of schema A in schema B using this DBLink. But when I trying to execute any procedre of schema A in schema B then i am getting error.
Regards,
Sachin -
Weird Problem calling Stored Procedure using JDBC
Scenario is..
I have J2EE application and calling stored procedure using JDBC.
My application connects to instance "A" of testDB.
Schema "A" does NOT own any packages/procedure but granted execute on oracle packages/procedures that reside in schema "B" of testDB.
In java code I call procedure(proc1) in package(pac1) which internally calls procedure(proc2) in package(pac2).
The problem occurs when procedure pac2.proc2 is modified. After the modification, my java code fails and throws an exception "User-Defined Exception" and I am also getting "ORA-06508: PL/SQL: could not find program unit being called". This clears up only if I bounce the web container. (This doesn't happen if I modify pac1.proc1 and run my application)
Has any one faced this problem? Please suggest if any thing can be changed in jdbc code to fix this problem.
ThanksHi,
I assume these are PL/SQL packages and that the changes are made at the package specification level?
If so, it looks like you are hitting the PL/SQL dependencies rules. In other words, if the spec of proc2 is changed, then proc1 is invalidated, since proc1 still depends on the old version of proc2's spec. As a result, if you try to run proc1, its spec must either be explicitly rewritten before it could run again or implicitly recompiled first, if the (implicit) recompilation fails, it won’t run.
Kuassi http://db360.blogspot.com -
Strange problem with SSL Sockets using more than 10 Clients
Hi
I�m using Jsse ( JDK 1.4.2_06 ). I have coded a Client/Server Applikation acting over SSLSockets or over unsecured Sockets. If I use unsecured Sockets everthing works fine, but if I use SSLSockets for the Connection and about 20 Clients, the Clients often can�t connect to the Server and the following Exception was thrown:
java.net.ConnectException: Connection refused: connect
Could it be that there is some strange problem with SSLServerSockets relating to this phenomenon?
If I use only a few Clients the Exception occurs never or only sometimes.
Has anyboby an idea what is happaning there?
Regards ChrisliHi
From the description of your scenario, you have coded your own server side of the application. I would advise that you consider moving your application to run under Tomcat framework and test if you still get the same exception. -
No of Count problem in a procedure using SYS_REFCURSOR
Hi All,
I have a problem in sys_refcursor .The loop goes for an extra count than the original count in a procedure using sys_refcursor. I will explain my problem with sample example.
CREATE TABLE FUNC_TAB (TAB_NAME VARCHAR2(20));
INSERT INTO FUNC_TAB VALUES ('TAB1');
INSERT INTO FUNC_TAB VALUES ('TAB2');
CREATE OR REPLACE
FUNCTION FUNC_PROC
RETURN SYS_REFCURSOR
AS
TITLES SYS_REFCURSOR;
BEGIN
OPEN TITLES FOR SELECT TAB_NAME FROM FUNC_TAB ;
RETURN TITLES;
END FUNC_PROC;
CREATE OR REPLACE
PROCEDURE PROC_GET_FUNC
AS
TYPE FUNC_REC
IS
RECORD
TAB_NAME VARCHAR2(20));
TI_REC FUNC_REC ;
TITLES SYS_REFCURSOR;
STMT VARCHAR2(400);
BEGIN
TITLES := FUNC_PROC;
LOOP
FETCH TITLES INTO TI_REC ;
STMT := 'SELECT * FROM '||TI_REC.TAB_NAME ;
DBMS_OUTPUT.PUT_LINE(STMT);
WHEN TITLES%NOTFOUND;
END LOOP ;
CLOSE TITLEs ;
COMMIT;
END PROC_GET_FUNC;
When i print it , i get the output as 'select * from tab1 ', select * from tab2 ', select * from tab2 ', .I getting an extra count here i.e 'select * from tab2 occur twice'. I should get only 2 print statements but i am getting 3 print statements.Why there is
an extra count always? Please help meEXIT WHEN TITLES%NOTFOUND;is in wrong place:
SQL> CREATE OR REPLACE
2 PROCEDURE PROC_GET_FUNC
3 AS
4 TYPE FUNC_REC
5 IS
6 RECORD
7 (
8 TAB_NAME VARCHAR2(20));
9 TI_REC FUNC_REC ;
10 TITLES SYS_REFCURSOR;
11 STMT VARCHAR2(400);
12 BEGIN
13 TITLES := FUNC_PROC;
14 LOOP
15 FETCH TITLES INTO TI_REC ;
16 STMT := 'SELECT * FROM '||TI_REC.TAB_NAME ;
17 DBMS_OUTPUT.PUT_LINE(STMT);
18 EXIT WHEN TITLES%NOTFOUND;
19 END LOOP ;
20 CLOSE TITLEs ;
21 COMMIT;
22 END PROC_GET_FUNC;
23 /
DDL was issued on object SCOTT.PROC_GET_FUNC
Procedure created.
SQL> exec PROC_GET_FUNC;
SELECT * FROM TAB1
SELECT * FROM TAB2
SELECT * FROM TAB2
PL/SQL procedure successfully completed.
SQL> CREATE OR REPLACE
2 PROCEDURE PROC_GET_FUNC
3 AS
4 TYPE FUNC_REC
5 IS
6 RECORD
7 (
8 TAB_NAME VARCHAR2(20));
9 TI_REC FUNC_REC ;
10 TITLES SYS_REFCURSOR;
11 STMT VARCHAR2(400);
12 BEGIN
13 TITLES := FUNC_PROC;
14 LOOP
15 FETCH TITLES INTO TI_REC ;
16 EXIT WHEN TITLES%NOTFOUND;
17 STMT := 'SELECT * FROM '||TI_REC.TAB_NAME ;
18 DBMS_OUTPUT.PUT_LINE(STMT);
19 END LOOP ;
20 CLOSE TITLEs ;
21 COMMIT;
22 END PROC_GET_FUNC;
23 /
Procedure created.
SQL> exec PROC_GET_FUNC;
SELECT * FROM TAB1
SELECT * FROM TAB2
PL/SQL procedure successfully completed.
SQL> SY. -
Strange problem with executing PL/SQL procedure from sqlplus.
Hello,
basicly, I'm strugling with executing a procedure written in PL/SQL from sqlplus.
It's all because I convert a data in procedure by other function.
SELECT partition_name
INTO strpartition
FROM user_tab_partitions
WHERE table_name = tablename_in
and substr(partition_name, -8, length(partition_name)) = (SELECT F_CONVERT_DATE(tablename_in,p_date) from dual);
/tablename_in and p_date are input parameters/
Function F_CONVERT_DATE looks more less like :
select
TO_CHAR(TRUNC(NEXT_DAY(ADD_MONTHS(substr(partition_name, -8, length(partition_name)), -3), 'MONDAY')-7), 'YYYYMMDD')
END
AS p_date
INTO v_okr
FROM user_tab_partitions
where substr(partition_name, -8, length(partition_name)) = p_date;
Well, the thing is that procedure is executable from TOAD without any errors !! But when I try to execute it straight from sqlplus it returns:
ORA-01861: literal does not match format string
ORA-06512: at "F_CONVERT_DATE", line 13
ORA-06512: at "NAME_OF_PROCEDURE", line 17
Tip: When I don't use functions ADD_MONTHS, NEXT_DAY and TO_CHAR in function F_CONVERT_DATE sqlplus can execute it. But only when I use them it returns an error.
Anybody has a clue how to solve it?
Regards !Hi, Nodex,
Avoid implicit conversions.
For example:
TO_CHAR(TRUNC(NEXT_DAY(ADD_MONTHS(substr(partition_name, -8, length(partition_name)), -3), 'MONDAY')-7), 'YYYYMMDD')ADD_MONTHS expects a DATE as its first argument.
SUBSTR returns a VARCHAR2, so you're calling ADD_MONTHS with a VARCHAR2 where it expects a DATE.
For good or ill, the system tries to avoid raising an error in this case by implicitly converting the VARCHAR2 to a DATE. Exactly how it does that depends on
(a) the tool you are using (SQL*Plus or Toad, for example),
(b) the version (Oracle 10 behaved quite different form Oracle 9),
(c) environmental settings (such as NLS_DATE_FORMAT), which in turn may depend on initialization parameneters, and
(d) who knows what else.
When you have to convert, do so explicitly.
You can convert a VARCHAR2 to a DATE using TO_DATE, like this:
TO_CHAR ( TRUNC ( NEXT_DAY ( ADD_MONTHS ( TO_DATE ( SUBSTR ( partition_name
, -8
, LENGTH (partition_name)
, 'YYYYMMDD' -- or whatever
, -3
, 'MONDAY'
- 7
, 'YYYYMMDD'
) -
Strange delay when executing procedures
Hi,
When migrating from SQL 2008 to SQL 2014 I come across a strange issue where some of our stored procedures always takes 500+ ms to execute (client side). The problem seems to be in the packet size together with the size of the columns.
Executing the procedure below on the client takes 500 ms. Bu just removing one character from a field name and the issue dissappears.
There is no delay if the test application is started on the SQL server itself - only on the clients. The firewall is off and there is no real time anti-virus running.
Any help is welcome
Regards
Robert Warnestam / CODAB AB
SET ANSI_NULLS OFF
GO
SET QUOTED_IDENTIFIER OFF
GO
alter Procedure [dbo].[co_Test1]
AS
SELECT
"1" as "L32xxxxxxxxxxxxxxxxxxxxxxxxxxx01L32xxxxxxxxxxxxxxxxxxxxxxxxxxx02",
"1" as "L32xxxxxxxxxxxxxxxxxxxxxxxxxxx03L32xxxxxxxxxxxxxxxxxxxxxxxxxxx04",
"1" as "L32xxxxxxxxxxxxxxxxxxxxxxxxxxx05L32xxxxxxxxxxxxxxxxxxxxxxxxxxx06",
"1" as "L32xxxxxxxxxxxxxxxxxxxxxxxxxxx07L32xxxxxxxxxxxxxxxxxxxxxxxxxxx08",
"1" as "L32xxxxxxxxxxxxxxxxxxxxxxxxxxx09L32xxxxxxxxxxxxxxxxxxxxxxxxxxx10",
"1" as "L32xxxxxxxxxxxxxxxxxxxxxxxxxxx11L32xxxxxxxxxxxxxxxxxxxxxxxxxxx12",
"1" as "L32xxxxxxxxxxxxxxxxxxxxxxxxxxx13L32xxxxxxxxxxxxxxxxxxxxxxxxxxx14",
"1" as "L32xxxxxxxxxxxxxxxxxxxxxxxxxxx15L32xxxxxxxxxxxxxxxxxxxxxxxxxxx16",
"1" as "L32xxxxxxxxxxxxxxxxxxxxxxxxxxx15L32xxxxxxxxxxxxxxxxxxxxxxxxxxx160123456789012345678901234567"Btw. We have the same delay using a non-virtualized client (win7)...
There are a couple of mysteries here. One is that connection pooling circumvents the problem. I would expect the opposite. The other is that decreasing the network packet size improves performance with larger results. Again, I would
expect the opposite.
See if you can reproduce the issue with the code below, which gathers more detailed timings. If so, can you run it against a physical SQL box too.
using System;
using System.Data;
using System.Data.Common;
using System.Data.SqlClient;
using System.Collections;
using System.Collections.Generic;
using Microsoft.SqlServer.Server;
using System.Diagnostics;
namespace SqlPerfTest
class Program
private const string CON_STRING = "workstation id=TEST;packet size=4096;data source=172.16.0.2;persist security info=True;initial catalog=XXX;User id=XXX;Password=XXX";;
//pass proc name as command-line arg
static void Main(string[] args)
if (args.Length != 1)
Console.WriteLine("specify SQL statement as command-line argument");
Environment.ExitCode = 1;
return;
string sql = args[0];
var totalDuration = Stopwatch.StartNew();
for(int i = 1; i <= 100; ++i)
using(SqlConnection conn = new SqlConnection(CON_STRING))
using (SqlCommand command = new SqlCommand(sql, conn))
var testDuration = Stopwatch.StartNew();
var openDuration = Stopwatch.StartNew();
conn.Open();
openDuration.Stop();
var execDuration = Stopwatch.StartNew();
var reader = command.ExecuteReader();
execDuration.Stop();
var readDuration = Stopwatch.StartNew();
var results = new object[reader.FieldCount];
do
while (reader.Read())
reader.GetValues(results);
} while (reader.NextResult());
reader.Close();
readDuration.Stop();
testDuration.Stop();
Console.WriteLine(
"Iteration={0}, TestDuration={1}, OpenDuration={2}, ExecDuration={3}, ReadDuration={4}"
, i
, testDuration.Elapsed
, openDuration.Elapsed
, execDuration.Elapsed
, readDuration.Elapsed
totalDuration.Stop();
Console.WriteLine(
"AvgDuration={0}, TotalDuration={1}"
, (new TimeSpan(totalDuration.Elapsed.Ticks / 100))
, totalDuration.Elapsed);
Console.ReadLine();
Dan Guzman, SQL Server MVP, http://www.dbdelta.com -
PLS-00306,problem while executing procedure from oracle e_comerce
Hi
I have writen a procedure in oracle.Tere i have a parameter with type varchar2.
While i registered it in e_comerce i choosed the value set as 15characters.
When i am runing the program from my ecomerce application it gives an error as below:
ORACLE error 6550 in FDPSTP
Cause: FDPSTP failed due to ORA-06550: line 1, column 7:
PLS-00306: wrong number or types of arguments in call to 'PO_OUTPUT'
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored
there is no error when i am executing my procedure in toad/sql+ but this error comes only in e_comerce application.
PLease tell what is the reason and what can be the solution?Hi,
<p>
The function has the following parameters:<br>
function insertj(jnum j.j#%type, jname j.jname%type, city j.city%type)<br>
where j# is varchar2(5), jname is varchar2(35) and city is varchar2(35)<br>.
I was trying to insert the following values:<br>
j#:='J11', jname:='JobName' and city:='Paris'.<br>
</p>
<p>
The procedure just calls this function with the same parameters. It is very strange because it is hard to see what the problem is. The line 10 is return 0 in the function where I believe the error comes from. It starts in the procedure and then goes in the function body, if I am interpreting this right.
</p>
<p>
Any idea?
</p>
Thanks! -
Problem while executing procedure thru Shell script (EXECUTE IMMEDIATE)
Hi All,
I have created a procedure where i am passing column name, tablename and business date. The procedure gets last 5 business date excluding Saturday and sunday based on business date.
i am using EXECUTE IMMEDIATE statement in the procedure, where i am replacing the column name, table name, and business date & then executing this statement.
stmt := 'select count(1) FROM '||tblname||' where trunc('||date_column||')= :1';
EXECUTE IMMEDIATE l_stmt into tbl_count using to_char(in_date, 'DD-MON-YYYY') ;
It will give me the count of all 5 days for a particular dates. When i run the procedure in SQL*Plus/TOAD, it gives me desired result. When i run this in UNIX shell script, it runs fine but at end gives following error:
SP-xxx: Bind varaible not declared.
Can someone tell me where might be the problem?Hello, if you could put a {noformat}{noformat} before and after your snippets of code please, it makes it much easier to decipher.
You have:EXECUTE IMMEDIATE l_stmt into tbl_count using to_char(in_date, 'DD-MON-YYYY') ;
Where it should be:EXECUTE IMMEDIATE l_stmt into tbl_count using TRUNC(in_date) ;
Additionally, you do not need the SQL script, you could simply have:sqlplus -S $ORA_UID/$ORA_PWD@$DSQuery <<EOF >>${TMP_DIR}/report.log 2>&1
whenever sqlerror exit failure
whenever oserror exit failure
set serveroutput on;
set pages 0;
set feed off;
exec return_date ('20090515','STIFAPACDTR','ASOFD','n');
print;
quit
EOF
if [[ $? -ne 0 ]]
then
echo "sqlplus did not run successfully,verify"
echo "For errors please check ${TMP_DIR}/report.log file\n Exiting..."
else
echo "$0 script executed successfully"
fi
exit $?
You don't need any of this:if /usr/xpg4/bin/grep -e 'ORA-' -e '^ERROR at' -e 'unknown command' ${TMP_DIR}/report.log
then
print "sqlplus did not run successfully,verify"
print "For errors please check ${TMP_DIR}/report.log file\n Exiting..."
exit 1
fi
if [http:// -s ${TMP_DIR}/report.log ]
then
print "`echo $0 script executed successfully"
grep -v '^$'${TMP_DIR}/report.log > ${TMP_DIR}/report.csv
else
print "${TMP_DIR}/report.log file not generated, verify, \n exiting"
exit 1
fi
outFLAG="n"
done
I'm not sure that that will fix your problem here, but can you try again with those changes. -
Problem in executing procedure in 8.1.7
Hi,
I have created the below mentioned procedure. It got compiled successfully. But when i try to execute it is giving error
"PLS-00306: wrong number or types of arguments in call to 'P1' ORA-06550: line2, column3: PL/SQL".
But if i hardcode the projectId to any number value & execute the procedure, it is getting executed successfully.
CREATE OR REPLACE PROCEDURE p1 (projectid NUMBER)
IS
CURSOR c1
IS
SELECT sl_no, col1, col2, col3
FROM (SELECT ROWNUM sl_no, LEVEL col2,
col3, col4, col5
FROM (SELECT col2, col3, col4, col5
FROM tabl1 tab_level
WHERE tab_level.project_id = projectid
AND tab_level.active_in = 'Y'
AND tab_level.delete_in = 'N') tab1
CONNECT BY PRIOR tab1.col3 = tab1.col4
START WITH (col3, col5) IN (SELECT col3, MAX (col5)
FROM tabl1 tab_parent
WHERE tab_parent.project_id =
projectid
AND NVL (tab_parent.col4, 0) =
0
AND tab_parent.active_in = 'Y'
AND tab_parent.delete_in = 'N'
GROUP BY col3)) table1,
table2,
tabl33
WHERE table1.col2 = table2.col2 AND tabl1.col1 = table3.col1;
BEGIN
FOR i IN c1
LOOP
DBMS_OUTPUT.put_line ('Success');
END LOOP;
END;
Basically here i am selecting some columns from third level SELECT. If i change it to second level SELECT it works fine without hardcoding. Can you help me in finding the problem in the code.
Thanks for the help,
Sunil.Sunil,
Hierarchical query ie CONNECT BY PRIOR clause doesnt work on views or inline views in Oracle 8.1.7. So your procedure is failing. Upto 8.1.7, the hierarchical queries work only on tables.
If you try the same in 9i, it will work.
Hope this helps
Regards
Dinesh -
Problem in executing report using rwrun.sh with runtime/lexical parameters
hi..
My problem is as follows..
I'm using SuSE8.0, with Oracle DS installed..
I made a rep file to execute a report from command line using rwrun.sh.
For the first time I got problems with single quotes and later I solved it by using \ as escape sequence and I can generate the report.
I have 2 lexical parameters.
1) atable --> for table names
2) whereford --> for WHERE condition
When I make the following command I execute it successfully and get the report .
/opt/oracle/OraHome1/bin/rwrun.sh /opt/jakarta/webapps/ROOT/std-reports/DiagnoseProtokolle.rep userid=test/test@approxim batch=yes desname=/opt/jakarta/webapps/ROOT/kovi_361_Report.PDF destype=file desformat=PDF atable=\',SD_DIAGNOSESYSTEME\' whereford=\'\ \(\(\ SD_DIAGNOSESYSTEME.bezeichnung\ =\'AIRBAG\'\ \)\)\ AND\ \(\(\ SD_DIAGNOSESYSTEME.bezeichnung\ =\'ABS\'\ \)\)\ AND\' tracefile=/opt/jakarta/webapps/ROOT/trace/trace.log tracemode=TRACE_REPLACE
** In one line..
If I don't use \ for escaping braces it doesn't work and also for spaces and single quotes.
I use braces as I get sometimes mixed conditions..
But when I make a condition like for eg: emp.emp_id = dept.emp_emp_id it is not executing..
i mean primary key is referd to foreign key of another table.
so in the same way the error prone command looks like this
/opt/oracle/OraHome1/bin/rwrun.sh /opt/jakarta/webapps/ROOT/std-reports/DiagnoseProtokolle.rep userid=test/test@approxim batch=yes desname=/opt/jakarta/webapps/ROOT/kovi_361_Report.PDF destype=file desformat=PDF atable=\',MESSWERTE,SD_DIAGNOSESYSTEME\' whereford=\'\ \(\(\ MESSWERTE.mess_id\ =\ SD_DIAGNOSESYSTEME.mess_mess_id\ AND\ SD_DIAGNOSESYSTEME.bezeichnung\ =\'AIRBAG\'\ \)\)\ AND\ \(\(\ SD_DIAGNOSESYSTEME.bezeichnung\ =\'ABS\'\ \)\)\ AND\' tracefile=/opt/jakarta/webapps/ROOT/trace/trace.log tracemode=TRACE_REPLACE
when I had a look at the trace.log file I see that particular condition is transformed in to
MESSWERTE.mess_id = 'SD_DIAGNOSESYSTEME.mess_mess_id'
but this is completely awkward.
Then I made a batch file and tested it on windows and i put the whole condition in double quotes and it worked always fine..
It seems the problem is with the shell ..or ??
In my rwrun.sh th elast line looks like this..
$ORACLE_HOME/bin/rwrun $*
I also tried to chaneg this to
$ORACLE_HOME/bin/rwrun "$@" and also $ORACLE_HOME/bin/rwrun "$*"
but no progress..
If some one could help me it would be gratefull for me..
Thanx in advance..
regards
KoviHere's the relevant portion from the Bash manual:
Enclosing characters in double quotes preserves the literal value of all characters within the quotes, with the exception of $, `, and \. The characters $ and ` retain their special meaning within double quotes. The backslash retains its special meaning only when followed by one of the following characters: $, `, ", \, or <newline>. A double quote may be quoted within double quotes by preceding it with a backslash.
So basically stop escaping the single-quotes with a backslash, and instead enclose the entire argument value in double-quotes. Add the single-quotes only if you want them literally, don't escape the parentheses, etc. Let's know if it works for you.
-Manish -
Strange problem while executing the Query.......
Hi,
I have created a new query and I am facing the strange behaviour.
When I execute it , it works fine but when one of my colleague execute it , it does not return any value for one of the Price variable.
It works fine with most of the people I have checked except one.
Can somebody let me know the reason.....?
Thanks , JeetuHello,
If it is authorization problem go to transaction st01 and mark the first check for authorization. Under filter insert the user. Click Trace On.
Execute the query with that user and just after the lack of authorization message click trace off.
Read the trace.
Do the same with your user and compare the log of the two.
You'll see what is missing.
Assign points if helpful.
Diogo. -
Accessing package and procedure using dblink
How can I access my package and function using a dblink.
my query is like this
select id from tablel(pck_prod.fetchid('p107'))
union select pck_prod.pid('p107') from dual
my package pck_prod is on remote machine and I have dblink to that machine.
fetchid and pid are my functions in the package.
ThanksDoes it look anything like this?
Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production
SQL> CREATE OR REPLACE TYPE varchar2_table AS
2 TABLE OF VARCHAR2 (4000);
3 /
Type created.
SQL> CREATE OR REPLACE FUNCTION function_name
2 RETURN varchar2_table
3 IS
4 BEGIN
5 RETURN varchar2_table ('Banana');
6 END;
7 /
Function created.
SQL> SELECT column_value
2 FROM TABLE (function_name);
COLUMN_VALUE
Banana
SQL> CREATE DATABASE LINK scott
2 CONNECT TO scott
3 IDENTIFIED BY tiger
4 USING 'XE';
Database link created.
SQL> SELECT column_value
2 FROM TABLE (function_name@scott);
SELECT column_value
ERROR at line 1:
ORA-30626: function/procedure parameters of remote object types are not
supported
SQL> If so then the key phrase here is 'remote object types'. -
Problem in executing SP using reciver JDBC adapter
Hi all,
when i am execting a SP using Reciever JDBC adapter i am getting the below error,
com.sap.engine.interfaces.messaging.api.exception.MessagingException: Error processing request in sax parser: Error when executing statement for table/stored proc. 'WD_WRAP_PROCESS_APPMT_REQ_PR' (structure 'STATEMENT'): java.lang.IllegalArgumentException
i guess this error is because of DATE field that i am using in the SP. can any one give me the solution how to handle DATE field.
Thank You,
MadhavHI Madhav,
you check the below weblog for data and time issue with DB.
http://www.sdn.sap.com/irj/scn/weblogs;jsessionid=(J2EE3417500)ID0760453250DB00677869991075830602End?blog=/pub/wlg/2002
hope it will use for issue.
Regards,
Ramesh -
Strangely behaving Java Stored Procedure using Sockets
Hi,
I have a java class which connects to 10.x.x.x:2100 to interact with a server to download some files using a custom protocol.
After using it for once and immediately invoking it again causes it to just return without actually invoking the java class.After say,1 minute if the same call is made it is invoked properly.
The call to the pl/sql wrapper is made from a .net application in an asynchronous callback.
What could be the cause.Did anyone run into this anytime.?
ThanksWithout a code example to run, it would be ahrd to say what is happening. It looks like there is an issue with blocking v.s. unblocking i/o that gets resolved after a wait period. If you can get me an example, I iwll take a look.
Maybe you are looking for
-
Anyone been able to resolve the 'listener down' status in EM when it is act
Hi, I can't make the EM show the listener as running, it always shows it as stopped. I checked it with lsnrctl and it is running, but in EM appears as stopped. I refreshed the screen and nothing; I tried to start it from the EM, and it displays a mes
-
Hello! I cannot download applications, when I try to do it the application says "waiting" but it does not continue downloading! Can someone help me????
-
IMP Fails when using multi-file export
IMP-00051: Direct path exported dump file contains illegal column length IMP-00008: unrecognized statement in the export file: I exported to two 2.0 gig files on linux 816 then simply copied them to another 816 server and attemped to import, it seems
-
Access Connections best practice
I like the idea of having Lenovo Access Connection change the appropriate settings depending on you network location. Like turning off wifi when you are cabled. Althoguh I often find it to be creating more problems than gains. Any generel best practi
-
How do I customize my ringtone iOS7??
It doesn't let me change the tone.