oracle底層字典表obj$及source$與儲存過程procedure系列三

wisdomone1發表於2012-11-16
Connected to Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 
Connected as scott
 
SQL> create or replace procedure proc_non_sep
  2  as 
  3  begin
  4  null;
  5  end;
  6  /
 
Procedure created
 
SQL> create or replace procedure 'proc_non_sep'
  2  as
  3  begin
  4  null;
  5  end;
  6  /
 
create or replace procedure 'proc_non_sep'
as
begin
null;
end;
 
ORA-04050: 過程, 函式或程式包名無效或缺失
 
SQL> create or replace procedure 'proc_non_sep'
/
  2  /
 
create or replace procedure 'proc_non_sep'
 
ORA-04050: 過程, 函式或程式包名無效或缺失
 
SQL> create or replace procedure "proc_non_sep"
  2  as
  3  begin
  4  null;
  5  end;
  6  /
 
Procedure created
 
SQL> create or replace procedure "proc_NON_SEP"
  2  as
  3  begin
  4  null;
  5  end;
  6  /
 
Procedure created
 
SQL> select * from user_objects uo where uo.OBJECT_NAME like '%PROC_NON%';
 
OBJECT_NAME                                                                      SUBOBJECT_NAME                  OBJECT_ID DATA_OBJECT_ID OBJECT_TYPE         CREATED     LAST_DDL_TIME TIMESTAMP           STATUS  TEMPORARY GENERATED SECONDARY  NAMESPACE EDITION_NAME
-------------------------------------------------------------------------------- ------------------------------ ---------- -------------- ------------------- ----------- ------------- ------------------- ------- --------- --------- --------- ---------- ------------------------------
PROC_NON_SEP                                                                                                        132741                PROCEDURE           2012/11/16  2012/11/16 19 2012-11-16:19:13:17 VALID   N         N         N                  1 
 
SQL> select * from user_objects uo where uo.OBJECT_NAME like '%proc%';
 
OBJECT_NAME                                                                      SUBOBJECT_NAME                  OBJECT_ID DATA_OBJECT_ID OBJECT_TYPE         CREATED     LAST_DDL_TIME TIMESTAMP           STATUS  TEMPORARY GENERATED SECONDARY  NAMESPACE EDITION_NAME
-------------------------------------------------------------------------------- ------------------------------ ---------- -------------- ------------------- ----------- ------------- ------------------- ------- --------- --------- --------- ---------- ------------------------------
proc_NON_SEP                                                                                                        132743                PROCEDURE           2012/11/16  2012/11/16 19 2012-11-16:19:14:53 VALID   N         N         N                  1 
proc_non_sep                                                                                                        132742                PROCEDURE           2012/11/16  2012/11/16 19 2012-11-16:19:14:33 VALID   N         N         N                  1 
proc_obj_new                                                                                                        132740                PROCEDURE           2012/11/16  2012/11/16 19 2012-11-16:19:05:16 VALID   N         N         N                  1 
 
SQL> create or replace procedure proc_test_single
  2  as
  3  begin
  4  null;
  5  end;
  6  /
 
Procedure created
 
SQL> create or replace procedure 'proc_test_single_1'
  2  as
  3  begin
  4  null;
  5  end;
  6  /
 
create or replace procedure 'proc_test_single_1'
as
begin
null;
end;
 
ORA-04050: 過程, 函式或程式包名無效或缺失
 
SQL> 


小結:
    儲存過程的名稱不能用單引號括起來
    儲存過程的名稱可以用雙引號括起來
    用雙引號括起來的儲存過程的大小寫是區分的,即是不同的物件

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9240380/viewspace-749381/,如需轉載,請註明出處,否則將追究法律責任。

相關文章