Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.server -> Re: executing a procedure
You need to pass a variable to receive the value of OvcErrorMessage - eg:
execute spAddUser ('Pete', 'Rose',lv_err_msg);
you can then do whatever you need to do in the calling procedure with the value of lv_err_msg.
Louis <frolio_at_videoshare.com> wrote in message
news:8c84ok$ojt$1_at_bob.news.rcn.net...
> Greeting All, I have created a simple stored procedure that takes
arguments
> and
> then writes them to a new record in my user table. Below is the code for
> this procedure:
>
> CREATE OR REPLACE PROCEDURE spAddUser (
> IvcFirstName IN VARCHAR2,
> IvcLastName IN VARCHAR2,
> OvcErrorMessage OUT VARCHAR2
> )
>
> AS
> AppError EXCEPTION;
>
> BEGIN
>
> OvcErrorMessage := 'NO ERROR.';
>
> INSERT INTO VIDEOSHARE.tbUser
> VALUES(
> IvcFirstName,
> IvcLastName
> );
>
> COMMIT;
>
> EXCEPTION
> WHEN OTHERS THEN
> ROLLBACK;
> OvcErrorMessage := 'Error Inserting Record: spAddUser: Pos #1.' ||
> SQLERRM;
> RAISE AppError;
> RETURN;
> END spAddUser;
> /
>
>
> When I try to execute this procedure:
>
> execute spAddUser ('Pete', 'Rose');
>
> I am prompted with the error message:
>
> ERROR at line 1:
> ORA-06550: line 1, column 7:
> PLS-00306: wrong number or types of arguments in call to 'SPADDUSER'
> ORA-06550: line 1, column 7:
> PL/SQL: Statement ignored
>
>
> I think it has to do with my output paramater? Do I need to pass
something
> to this or
> do I need to default it? Any help would be greatly appreciated.
>
> Louis
>
>
Received on Tue Apr 11 2000 - 00:00:00 CDT