zoukankan      html  css  js  c++  java
  • oracle笔记

    pl/sql中的替代变量:以&加上一个标识符表示,数字类型的替代变量如number类型的替代变量可以以如下形式表示:&age,&no,而字符类型的替代变量则

    必须放在单引号内如'&name','&addr'
    例:
     declare
    v_deptno dept.deptno%TYPE;
    v_dname dept.dname%TYPE;
    begin
    v_deptno:=&no;
    v_dname:='&name';
    insert into dept(deptno,dname)
    values(v_deptno,v_dname);
    end;

    declare
    v_deptno dept.deptno%TYPE:=&no;
    v_loc dept.loc%TYPE:='&name';
    begin
    update dept set loc=v_loc
    where deptno=v_deptno;
    end;

    在pl/sql中外层块不能访问内层块中的变量,而内层块可以访问外层块中的变量;注意每个分支结构、循环体都是一个块,其内部变量在外面是无法访问

    的。

    假设有一存储过程add_emp(eno number,name varchar2,sal number,job varchar2 default 'clerk',dno number)
    在oracle中如果用sql*plus可以用如下方式执行
    exec add_emp(1111,'mary',2000,'manger',10);
    而如果在pl/sql developer中必须放在plsql块内执行
    begin
    add_emp(1111,'mary',2000,'manger',10);
    end;

    函数的定义和调用:
    create or replace function get_sal(name in varchar2)
    return number
    is
    v_sal emp.sal%TYPE;
    begin
    select sal into v_sal from emp where upper(ename)=upper(name);
    return v_sal;
    exception
    when no_data_found then
    raise_application_error(-20000,'该雇员不存在');
    end;


    declare
    sal number;
    begin
    sal:=get_sal('scott');
    dbms_output.put_line(sal);
    end;

  • 相关阅读:
    3.4、Python中的类详解(0601)
    3.3、Python函数详解(0601)
    3.2、Python函数详解(0601)
    3.1、Python中的正则表达式(0601)
    2.4、Python文件对象及os、os.path和pickle模块(0530)
    2.3、Python迭代器、列表解析及生成器(0530)
    2.2、Python程序控制结构(0530)
    PHP之pear包总结
    Mac之brew使用
    Node之安装篇
  • 原文地址:https://www.cnblogs.com/liancs/p/3879345.html
Copyright © 2011-2022 走看看