Have you applied the function against the database. For example if you type
select owner,object_name
from all_objects
where object_name = 'CHECK_FOR_NAME';
If nothing is returned, it has not been stored in the database or you don't have
rights to view it using your current schema. If you did put it in the database, did it
go in with NO errors.
>>> [EMAIL PROTECTED] 07/23/01 02:26PM >>>
Hi again everybody,
I'll try to be as descriptive as possible, sorry if I leave anything important out.
I have the following function which I'm compiling using PL/SQL Developer (tnx
Djordje).
CREATE OR REPLACE FUNCTION check_for_name (
p_name_to_check VARCHAR)
RETURN BOOLEAN IS
CURSOR c_namestbl IS
SELECT lname
FROM names
WHERE lname = p_name_to_check;
v_return_value BOOLEAN;
BEGIN
OPEN c_namestbl;
IF c_namestbl%NOTFOUND THEN
v_return_value := FALSE;
ELSIF C_namestbl%FOUND THEN
v_return_value := TRUE;
END IF;
RETURN v_return_value;
CLOSE c_namestbl;
END check_for_name;
It compiles without errors (now).
The table 'names' is built like this :
SVRMGR> DESCRIBE names;
Column Name Null? Type
------------------------------ -------- ----
FNAME VARCHAR2(20)
LNAME VARCHAR2(20)
SVRMGR>
With data like this :
SVRMGR> SELECT * FROM names;
FNAME LNAME
-------------------- --------------------
Bruce Willis
Salma Hayek
Tom Cruise
Elle McPherson
4 rows selected.
But, whenever I try to do this :
EXECUTE check_for_name('Cruise');
so I can run the function from PL/SQL Developer I get the following error :
"ORA 0900 - Invalid SQL Statment"
However, If I execute the same statement from SQL*Plus or svrmgrl I get a differant
error :
SVRMGR> EXECUTE check_for_name('Cruise');
check_for_name('Cruise');
*
ORA-06550: line 2, column 2:
PLS-00221: 'CHECK_FOR_NAME' is not a procedure or is undefined
ORA-06550: line 2, column 2:
PL/SQL: Statement ignored
I'm running Oracle Enterprise Edition 8.1.5.0.0 on Windows 2000.
If that's not enough info, please let me know and I will supply whatever I can.
Thanks for reading this far :)
Michael.
--
Please see the official ORACLE-L FAQ: http://www.orafaq.com
--
Author: William Beilstein
INET: [EMAIL PROTECTED]
Fat City Network Services -- (858) 538-5051 FAX: (858) 538-5051
San Diego, California -- Public Internet access / Mailing Lists
--------------------------------------------------------------------
To REMOVE yourself from this mailing list, send an E-Mail message
to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from). You may
also send the HELP command for other information (like subscribing).