zoukankan      html  css  js  c++  java
  • PL/SQL基础语法入门

    先前安装了PL/SQL软件


    PL/SQL全称为Procedural Language/SQL。


    PL/SQL也是一种程序语言,叫做过程化SQL语言,是Oracle数据库对SQL语句的扩展


    打PL/SQL软件后


    新建Command Window


    输入ed便会打开一个编辑框。ed全称估计为Editr的缩写


    PL/SQL程序结构分为3部分,共四个关键字:declare,begin,exception和end


    四个关键词正好将程序结构分成三部分。


    declare:声明部分,程序中所需要的变量或者常量都在此声明,类似于Java类中的成员变量与常量
    begin:程序入口,程序开始执行的地方,相当于C语言中main()函数位置
    exception:异常处理部分,相当于Java异常处理中的try...catch.  PL/SQL中使用的是when...then...异常处理部分也可嵌套
    end:程序结束部分
    程序框架如下:


    declare
    --变量声明部分
    begin
    --程序开始入口
    exception
    --异常处理部分
    end;
    --程序结束


    --为注释符  相当于java中的行注释 //
    首先开始一门语言的学习,第一个简单程序当然就是helloworld。


    步骤如下:


    1.在PL/SQL软件中新建了Command Window后 输入ed 然后回车,打开e编辑器


    2.在编辑器中输入如下代码:


    begin
        dbms_output.put_line('helloword!');
    end;


    3.点击ok后输入 / 然后回车,若没有错误则会在屏幕中打印出helloworld! 字符串


    需要注意的是:
    由于本程序只是单纯的输出一条语句,所以不需要变量的声明declare部分可以省去
    由于不会出现异常,所以exception部分必须省去,不然会报错
    注意end最后的那个分号,严格遵守语法规则。
    可见输入语句为dbms_output.put_line();相当于Java中的System.out.println();
    理解就行


    接下来将使用PL/SQL语言操作数据库
    这里我使用时系统自带的一个数据库
    EMP
    含有如下几个字段
    EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
    首先使用SQL查询员工编号为7369的工资 语法如下
    select SAL from EMP where EMPNO = 7369;
    执行结果如下
     
          SAL
    ---------
       800.00


    接下来使用PL/SQL语言查询步骤如下:
    输入ed回车,打开edit然后输入如下代码:


    declare
      v_sal varchar2(10);
    begin
      select SAL into v_sal from EMP where EMPNO = 7369;
      dbms_output.put_line(v_sal);
    end;


    分析如下:
    在declare部分声明一个变量v_sal类型为varchar并使其长度为20
    这里值得说明的是PL/SQL中与SQL查询语句中不同的是select语句
    SQL语句中select语句为 select 列名 from表名 where 条件
    PL/SQL语句中select语句为 select 列名 into 变量名 from 表名 where 条件
    举例说明:查询员工编号为7369的工资 两种语法如下
    SQL: select SAL  from EMP where EMPNO = 7369;
    PL/SQL: select SAL into v_sal from EMP where EMPNO = 7369;


    运行结果一样


    需要说明的是declare部分中定义的变量大小必须比数据库中数据类型的大小 大,不然定义的变量装不下数据库中数据,就会报错。


    还有一种简单做法就是 :
    v_sal EMP.SAL%type;
     即将数据类型动态的定义成与数据库中的数据类型一致,这样数据库中数据变动也不会影响到程序中变量的修改
    即 v_sal这个变量的数据类型与EMP表下的SAL字段的数据类型一致。


    若有多个变量需要操作:查询员工编号为7369的ENAME JOB,SAL
    代码如下:
    declare
      v_ename EMP.ENAME%type;
      v_job EMP.JOB%type;
      v_sal EMP.SAL%type;
    begin
      select ENAME,JOB,SAL into v_ename,v_job,v_sal from EMP where EMPNO = 7369;
      dbms_output.put_line(v_ename||','||v_job||','||v_Sal);
    end;


    运行便可查询出所需信息
    由代码可见 输出语句中输出多个变量时 || 相当于Java中的 + 

    转载至:http://blog.csdn.net/chance2015/article/details/50409557

  • 相关阅读:
    jquery实现选项卡(两句即可实现)
    常用特效积累
    jquery学习笔记
    idong常用js总结
    织梦添加幻灯片的方法
    LeetCode "Copy List with Random Pointer"
    LeetCode "Remove Nth Node From End of List"
    LeetCode "Sqrt(x)"
    LeetCode "Construct Binary Tree from Inorder and Postorder Traversal"
    LeetCode "Construct Binary Tree from Preorder and Inorder Traversal"
  • 原文地址:https://www.cnblogs.com/liuhuimh/p/7279580.html
Copyright © 2011-2022 走看看