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

来源:互联网 发布:鉴知往来的意思 编辑:程序博客网 时间:2024/06/05 04:29

最近学习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 sectionBEGIN
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语句语法不一样,请读者自行斟酌。


原创粉丝点击