Oracle中的“过程名称IS”和“过程名称AS”有啥区别?
Posted
技术标签:
【中文标题】Oracle中的“过程名称IS”和“过程名称AS”有啥区别?【英文标题】:What is the difference between a "procedure name IS' and a "Procedure name AS" in Oracle?Oracle中的“过程名称IS”和“过程名称AS”有什么区别? 【发布时间】:2020-01-22 19:01:59 【问题描述】:PROCEDURE 示例(p_num1 IN TABLE%TYPE, p_num2 OUT NUMBER) 是
或
PROCEDURE 示例(p_num1 IN TABLE%TYPE, p_num2 OUT NUMBER) AS
【问题讨论】:
没有区别。使用你最喜欢的那个。 如果您不确定,请查看文档。对于CREATE PROCEDURE
,您可以看到 IS 和 AS 可以互换。 docs.oracle.com/cd/B28359_01/appdev.111/b28370/…
【参考方案1】:
区别只有一个字母:I
与 A
。你可以同时使用,不会有任何 other 区别。除了存储在数据字典表 [CDB|DBA|ALL|USER]_SOURCE 中的相同细微差别之外,执行两者的效果是相同的。
SQL> create or replace procedure p_test is begin null; end;
2 /
Procedure created.
SQL> create or replace procedure p_test as begin null; end;
2 /
Procedure created.
SQL>
请注意,它不适用于例如意见:
SQL> create or replace view v_emp as select * from emp;
View created.
SQL> create or replace view v_emp is select * from emp;
create or replace view v_emp is select * from emp
*
ERROR at line 1:
ORA-00905: missing keyword
【讨论】:
以上是关于Oracle中的“过程名称IS”和“过程名称AS”有啥区别?的主要内容,如果未能解决你的问题,请参考以下文章
Oracle 9i和Oracle 11g中的 i 和 g 分别是啥意思?