当前位置:首页 » 存储配置 » 存储过程中is和as

存储过程中is和as

发布时间: 2022-07-15 07:08:30

A. oracle存储过程中的关键字is、as究竟有什么区别呀

1、单独的FUNCTION, PROCEDURE 习惯用AS,PACKAGE 中的FUNCTION, PROCEDURE 用IS
2、
create [or replace] procere <过程名>
(
<参数1> [方式1] <数据类型1>,
<参数2> [方式2] <数据类型2>
)
is|as
PS/sql过程体;
单独的这么看is as 也没区别

B. 1,存储过程和函数的区别

存储过程和函数目的是为了 可重复地 执行操作数据库的sql语句的集合。
区别是写法和调用上。
写法上:存储过程的参数列表可以有输入参数、输出参数、可输入输出的参数;
函数的参数列表只有输入参数,并且有return <返回值类型,无长度说明>。
返回值上:
存储过程的返回值,可以有多个值,
函数的返回值,只有一个值。
调用方式上:
存储过程的调用方式有:
1)、exec <过程名>;
2)、execute <过程名>;
3)、在PL/SQL语句块中直接调用。
函数的调用方式有:
在PL/SQL语句块中直接调用。
具体分为:
----调用FUNCTION add_three_numbers
----1. 位置表示法调用函数
BEGIN
dbms_output.put_line(add_three_numbers(2,4,5));
END;
----2. 命名表示法调用函数
BEGIN
dbms_output.put_line(add_three_numbers(b=>3, a=>4,c=>2));
END;
----3. 混合使用位置表示法和命名表示法调用函数
BEGIN
dbms_output.put_line(add_three_numbers(3, b=>4,c=>2));
END;
----4. 排除表示法
BEGIN
dbms_output.put_line(add_three_numbers(12,c=>2));
END;
----5. sql调用表示法 --混合表示法
SELECT add_three_numbers(3, b=>4,c=>2) FROM DUAL;

----1. 该函数接受3个可选参数,返回3个数字的和
CREATE OR REPLACE FUNCTION add_three_numbers
(
a NUMBER:=0, b NUMBER:=0, c NUMBER:=0
)
RETURN NUMBER IS
BEGIN
RETURN a+b+c;
END;

存储过程:
基本语法:
create procere <过程名>(<参数列表,无参时忽略>)
as|is
变量声明、初始化
begin
业务处理、逻辑代码
exception
异常捕获、容错处理
end <过程名>;
参数:<参数名> in|out|in out <参数类型,无长度说明> ,如:v_name varchar2
in:入参
out:出参
in out:出入参
注:as|is表示as或is
调用语法:
1)、exec <过程名>;
2)、execute <过程名>;
3)、在PL/SQL语句块中直接调用。
例:
create or replace procere up_wap(v_param1 in out varchar2,v_param2 in out varchar2)
is
v_temp varchar2(20);
begin
dbms_output.put_line('交换前参数1:'||v_param1||' 参数2:'||v_param2);
v_temp:=v_param1;
v_param1:=v_param2;
v_param2:=v_temp;
dbms_output.put_line('交换后参数1:'||v_param1||' 参数2:'||v_param2);
exception
when others then dbms_output.put_line('There is a error when the procere up_wap executing!');
end up_wap;
/
-- 调用存储过程
declare
v_param1 varchar2(20):='param1';
v_param2 varchar2(20):='param2';
begin
up_wap(v_param1 => v_param1,v_param2 => v_param2);
end;
/

自定义函数(function)
基本语法:
create function <函数名>(<参数列表,无参时忽略>)
return <返回值类型,无长度说明>
as|is
变量声明、初始化
begin
业务处理、逻辑代码
return <返回的值>;
exception
异常捕获、容错处理
end <函数名>;
参数:in 入参
注:只有入参的类型。
在存储过程和自定义函数中的参数的传递(入参和出参)不能使用%type或%rowtype匹配,不能使用空值null,但是存储过程可以返回空值。
例:
create function uf_select_name_by_id_test(v_id in number)
return varchar2
is
v_name t_test.t_name%type;
begin
select t_name into v_name from t_test where t_id=v_id;
return v_name;
exception
when others then dbms_output.put_line('error');
end uf_select_name_by_id_test;
/
select uf_select_name_by_id_test(1) 姓名 from al;-- select调用
declare --pl/sql语句块调用
v_name varchar2(20);
begin
v_name:=uf_select_name_by_id_test(1);
dbms_output.put_line('name = '||v_name);
end;
/

C. 请教各位:Oracle中,存储过程里as 什么意思 还是取别名吗那么NULL AS PER_ABE 是什么意思

不知道您全部的语句是什么,如果单看这个,那么就是一个固定值的列,这个固定值就是空(NULL),这个列的别名是PER_ABE
例如:SELECT NULL AS NULLCOLUMN FROM DUAL,其实就是选了一个定值,而这个定值是空。AS后边是把这个定值指定一个列名。

D. oracle 存储过程 as 和is 区别

第一个问题:is和as是可以互用的,用哪个都没关系的
第二个问题:在外面
第三个问题:过程中没有declare关键字,declare用在语句块中
第四个问题:估计你看到的是做游标定义的东东,抑或者直接就一句sql。

E. 存储过程与pl/sql块有什么区别

凭记忆答:
pl/sql
是指对标准
sql
的扩展,即加上
if/loop/break
等流程控制功能;pl/sql
块就是一坨语句,以便可以用
begin/end
括起来;
存储过程是将一坨语句以一个给定的名字存在数据库里,便于重复使用;语句块不一定要存起来的,可以是只执行一次就扔掉。
is/as
只要语法允许使用,就可以看作一样。

F. 关于存储过程的 as 和 is 问题

要是换成AS就要改成下面的写法
CREATE PROCEDURE STUDENT_UPDATE
as
BEGIN
UPDATE STUDENT SET NAME = 'NULL'
WHERE ID IN
(
SELECT ID FROM STUDENT WHERE AGE < 20
);
COMMIT;
END;
go

G. oracle存储过程中,is和as有什么区别

在存储过程(procere)和函数(function)中没有区别,在视图(view)中只能用as不能用is,在游标(cursor)中只能用is不能用as。

H. Oracle:关于oracle自定义函数中的is/as

是的,AS和IS是同义词,在函数或者存储过程声明部分没什么区别,但是游标里面只可以用is,view的声明只可以用as

I. 创建存储过程is和as有什么区别

is 用来判断类型 如: if(val is String){.....}

as 作为/当做 的意思吧,我叙述不清,给你个例子吧:
function xx(e:Event):void{
var ss:Loader = e.target as Loader; // 让SS共享调用XX事件的对象的信息;
..}

J. 创建存储过程中有两个创建参数。一处是在AS前面,另一处是在AS 后面,有什么区别

AS前面的是输入、输出参数,AS后的是函数的返回值。
例如:create procere proc_a (para_a in varchar, para_b out number) as number
para_a是输入参数
para_b是输出参数
而proc_a的返回值是number型的,如果有这个东西,则必须在函数内return一个值或游标。
调用方法如下:
var_ret number; --定义一个接收函数返回的变量
var_ret:=proc_a('a',100); --调用函数并接收返回值赋给var_ret

热点内容
db2新建数据库 发布:2024-09-08 08:10:19 浏览:170
频率计源码 发布:2024-09-08 07:40:26 浏览:778
奥迪a6哪个配置带后排加热 发布:2024-09-08 07:06:32 浏览:100
linux修改apache端口 发布:2024-09-08 07:05:49 浏览:208
有多少个不同的密码子 发布:2024-09-08 07:00:46 浏览:566
linux搭建mysql服务器配置 发布:2024-09-08 06:50:02 浏览:995
加上www不能访问 发布:2024-09-08 06:39:52 浏览:811
银行支付密码器怎么用 发布:2024-09-08 06:39:52 浏览:513
苹果手机清理浏览器缓存怎么清理缓存 发布:2024-09-08 06:31:32 浏览:554
云服务器的优点与缺点 发布:2024-09-08 06:30:34 浏览:734