PL/SQL基础编程

PL/SQL主要特性
    SQL和PL/SQL编译器集成:PL/SQL支持SQL所有范围的语法,
    支持CASE语句和表达式。
    继承和动态方法释放。
    类型进化:属性和方法可以添加到对象类型中,也可以从对象类型中删除,不需要重新构建类型和相应数据,这使得类型体系能够随着应用而改变,不需要一开始就规划好。
    新的日期/时间类型:新的数据类型TIMESTAMP记录包括秒的时间值,新的数据类型TIMESTAMP WITH TIME ZONE和TIMESTAMP WITH LOCAL TIME ZONE可以根据时区不同纠正日期和时间值。
    PL/SQL代码的本地编译:通过使用典型的C开发工具编译Oracle提供的和用户编写的存储过程为本地执行语句,提高性能。
改善了全球和国家语言支持。
    表函数和游标表达式:可以像表一样返回一个查询结果行集合。结果集合可以从一个函数传给另一个函数,同时,结果集的行可以每隔一定时间返回一部分,减少内存的消耗。
    多层集合:用户可以嵌套集合类型,例如,创建PL/SQL的VARRAY表,VARRAY的VARRAY表或者PL/SQL表的PL/SQL表。可以建造复杂的数据结构。
    对LOB数据类型更好的集成:可以与操作其他类型一样操作LOB类型,也可以在CLOB和NCLOB类型上使用函数,还可以将BLOB类型作为RAW。LOB与其他类型之间的转换也变得更加容易,特别是从LONG转换为LOB类型。
    对批操作的增强:用户可以使用本地动态SQL执行批SQL操作,如批提取。同时也可以执行插入和更新操作,可能在某些行会遇到错误,但是,批处理可以继续执行,当执行完以后,用户在检查操作所遇到的问题。
    MEGRE语句:这是一个将插入和更新合并为单个操作的专用语句,主要用于数据仓库,执行特定模式色插入和更新操作。

PL/SQL具有许多优点,主要包括:
    对SQL的支持;
    支持面向对象编程;
    提供更好的性能;
    执行效率更高;
    使用方便;
    同Oracle集成更好;
    更高的安全性。

典型的PL/SQL代码块包含如下结构:
    DECLARE        --Optional
    Variables, cursors, user-defined,exceptions
    BEGIN        --Mandatory
    -SQL statements
    -PL/SQL statements
    EXCEPTION    --Optional
    Actions to perform when errors occur
    END;        -Mandatory
具体描述如下:
    DECLARE:声明变量、游标、用户自定义类型和异常。
    BEGIN:程序开始标志,表示开始执行SQL和PL/SQL程序。
    EXCEPTION:异常处理部分,处理SQL和PL/SQL语句处理中异常部分。
    END:程序结束标志,表示程序结束。

其中,变量声明和异常处理部分是可选的,程序执行部分(BEGIN和END)是必需的。在执行部分,可以嵌套字块和异常处理部分,也可以在声明部分定义子程序。

你可能感兴趣的:(PL/SQL基础编程)