启动SQL*Plus
连接数据库
创建函数
create or replace function Add(x in number,y in number)
return number
is
z number(10);
begin
z:=x+y;
return  z;
end;调用函数
declare
s number(10);
begin
s:=Add(1,2);
dbms_output.put_line(s);  --oracle中的标准包
end;

解决方案 »

  1.   

    谢谢楼上的大哥!请再问一下,如何将一个表查的结果属值给一个变量,如我以下法怎么有错误呢?create or replace function GetStuName(stu_id in number)
    return varhchar2(50)
    is
    name varhchar2(50);
    begin
    name:=select stu_name from tstudents where stu_id ='123'    --如果有记录就把这个人的姓名查出来
    if name<> ""
    return name;
    else
    return '无记录'
    end if
    end;谢谢啦!
      

  2.   

    谢谢楼上的大哥!请再问一下,如何将一个表查的一列一行的结果属值给一个变量,如我以下写法怎么有错误呢?或请您给我写一个。create or replace function GetStuName(stu_id in number)
    return varhchar2(50)
    is
    name varhchar2(50);
    begin
    name:=select stu_name from tstudents where stu_id ='123'    --如果有记录就把这个人的姓名查出来
    if name<> ''
    return name;
    else
    return '无记录'
    end if
    end;