1.pl/sql基本概念

      PL/SQL叫做过程化SQL语言(Procedural Language/SQL)。PL/SQL是Oracle数据库库对SQL语句的扩展,类似于SQL SERVER的T-SQL。PL/SQL在SQL的数据操作和查询中做条件分支判断、循环。

2.pl/sql结构

           (1)declare              /*可选*/

                      定义标识符,标识符:常量、标量、游标

            (2)begin               /*必选*/

                      开始执行的主体,有两种:sql语句、pl/sql语句

            (3)exception        /*可选*/

                      异常处理

             (4)end                /*必选*/

               在数据库执行PL/SQL程序时,PL/SQL语句和SQL语句是分别进行解析和执行的。

         例最简单pl/sql             

 

set serveroutput on    /*打开输出选项*/

                    例(1)declare部分

                            定义标识符格式:标量     数据类型

v_name :='myname'         /*给变量赋值(避免不与表名重复前面加v_)*/

                    例(3)exception部分

出现异常输出‘error’

3.pl/sql的变量

               pl/sql的变量有三种,简单变量、复合变量、外部变量,在四个部分中,声明部分主要用来声明变量并且初始化变量,在执行部分可以为变量赋新值,或者在表达式中引用变量的值,在异常处理部分同样可以按执行部分的方法使用变量。

                (1)常用变量

                           bin_integer :整数                       主要用于计数,加快查询

                          number       :数字类型

                          char            :定长字符串

                          date            :日期类型

                          long             :长字符串,最长2G

                          boolean        :布尔类型                可以取ture、false和null ,默认null,建议在declare里赋值

                         例(1)常用变量

注:boolean在dbms_output.put_line 不能打印

                         (2)变量声明

                                        变量声明,使用%type属性

      scott用户中v_empno2 emp.empno%type;           /*声明变量v_empno2和emp表的empno类型相同*/

             (3)复合变量,介绍两种table类型、record类型

                       --table变量类型(相当于java的数组)

--record变量类型(相当于java的类)

--使用%rowtype声明标量(行类型)