记SQL语句中的as和is的区别

最近学习oracle的课本,所以有点小纠结于在定义那些存储过程,函数和程序包中的那些as和is:

在view(视图)中,只能使用as;

在corsor(游标)中,只能使用is;

对于procedure(存储过程), function(函数), package(程序包)来说,as和is没有区别。只是使用习惯而已。

另外,附上创建上面定义的规范语法:

(1)创建视图:

 
 
CREATE [OR REPLACE] [FORCE|NOFORCE] VIEW view_name
[(alias[, alias]...)]
AS subquery
[WITH CHECK OPTION [CONSTRAINT constraint]]
[WITH READ ONLY]
 
 

(2)声明游标:

CURSOR cursor_name IS select_statement
(3)创建存储过程:

CREATE [OR REPLACE] PROCEDURE Procedure_name
[(parameter_name [{IN|IN OUT}] data_type,parameter_name [{IN|OUT|IN OUT}] data_type,...)]
{ IS | AS }
	declaration section
BEGIN
	executable section
EXCEPTION
	Exception handlers
END;
 (4)创建函数: 
 

CREATE [OR REPLACE] FUNCTION function_name
[(parameter_name [{IN|IN OUT}] data_type,parameter_name [{IN|OUT|IN OUT}] data_type,...)]
RETURN date_type
{ IS | AS } declaration section
BEGIN
	executable section
EXCEPTION
	Exception handlers
END;
 
 
 (5)创建程序包: 
 

CREATE [OR REPLACE] PACKAGE package_name
AUTHID {CURRENT_USER | DEFINER}
{AS | IS}
[public_variable_declarations...]
[public_type_declartions...]
[public_exception_declarations...]
[public_cursor_declarations...]
[function_declarations...]
[procedure_specifications...]
END [package_name];
 
 
注意:Oracle,SQL Server,MySQL这三个软件各自的SQL语句语法不一样,请读者自行斟酌。


猜你喜欢

转载自blog.csdn.net/tinmen091008/article/details/78314334