In Oracle PL/SQL, you can use the following commands to view table details:
When you are create an object in Oracle Database, default object type will be marked editionable
. From 12c onwards, you can mark the objects as noneditionable
, and same you cannot edit with create or replace
. For altering the same you have to alter the object and change to editionable
.
This is applicable to View, Funcitons, Procedure, Trigger, Library, Type.
create or replace noneditionable procedure test_proc ( p int ) as
begin
null;
end;
select editionable from user_objects
where object_name = 'test_proc ';
//result
EDITIONABLE
N
create or replace procedure test_proc ( p int ) as
begin
dbms_output.put_line ( 'Editionable version' );
end;
//result
ORA-38824: A CREATE OR REPLACE command may not change the EDITIONABLE property of an existing object.
With below you can alter the procedure.
alter procedure test_proc editionable;
create or replace procedure test_proc ( p int ) as
begin
dbms_output.put_line ( 'Editionable version' );
end;
exec test_proc (1);
//result
Editionable version
What are your thoughts on this post?
I’d love to hear from you! Click this link to email me—I reply to every message!
Also use the share button below if you liked this post. It makes me smile, when I see it.