Oracle_PL/SQL(1) 匿名块】的更多相关文章

1. PL/SQL 简介PL/SQL是一种比较复杂的程序设计语言, 用于从各种环境中访问Oracle数据库.为什么使用PL/SQL?Orade是一种关系型数据库, 用来访问关系型数据库的语言是 “结构化査询语言”SQL.SQL是一种第四代语言,只描述做什么,不描述如何做.一代语言:01二代语言:汇编三代语言:过程(条件判断.循环)四代语言:sql DELETE FROM emp where major='MANAGER';第四代语言相对简单,提供了较少的命令,它将用户与底层的基本数据结构和算法隔…
名词解释 子程序:PL/SQL的过程和函数统称为子程序. 匿名块:以DECLARE或BEGIN开始,每次提交都被编译.匿名块因为没有名称,所以不能在数据库中存储并且不能直接从其他PL/SQL块中调用. 命名块:除匿名块之外的其他块.包括过程.函数.包和触发器.可以在数据库中存储并在适当的使用运行. 子程序的优点: 1)具有扩展性 可以自定义PL/SQL语言以满足实际应用 2)高可用和可维护性 子程序的调用不受调用者数目的影响,只要有效就可被调用. 如果定义被更改以后,只有子程序受到影响,简化了维…
例外处理1.例外分类:预定义例外,非预定义例外,自定义例外三种传递例外:如果在例外处理部分exception没有捕捉例外,oracle会将例外传递到调用环境.捕捉并处理例外:使用例外处理部分完成exceptionwhen exception1 thenstatement1;when exception2 thenstatement2;...when others then --必须是例外处理部分的最后一条子句statement_n;... 2.预定义例外2.1系统预定义例外有21个,如下:dup…
pl/sql集合处理单行单列数据,可以使用标量变量:处理单行多列的数据,可以使用pl/sql记录(%rowtype,record):处理单列多行数据,可以使用pl/sql集合. pl/sql集合类型是类似于高级语言数组的一种复合数据类型.包括:嵌套表(table),数组(varray)两种. 一.嵌套表1.定义:嵌套表用于处理相同类型的多个数值,其中每个数值称为一个元素.元素的个数从1开始,元素个数的多少没有限制1.2 语法: type type_name is table of element…
create table s_sc ( SNAME VARCHAR2(20) primary key, c_grade NUMBER(6), m_grade NUMBER(6), e_grade NUMBER(6) );declare begin for rs in (select sno,sname from student) loop insert into s_sc (sname) values (rs.sname); for rs2 in (select grade,cname from…
Oracle PL/SQL块 匿名块的四个类型 type rowtype record table ---- type (列类型)  %type类型是指声明变量的时候,参考某个表的某个列的类型---- rowtype (行类型) %rowtype参数某个表的类型,%rowtype中可以存储多个数据,具体可存多少个和表的字段数一样.---- record类型(记录类型) record可以理解为可以自定义的行类型,record类型在使用之前必须声明该类型.---- table类型 (表类型) 无论是…
匿名块的基本语法结构包括声明和执行两部分.匿名块每次提交都被重新编译和执行.因为匿名块没有名称并不在数据库中存储,所以匿名块不能直接从其他PL/SQL 块中调用. 定义语法: [ DECLARE ] [ variable_declaration ] [ cursor_declaration ] BEGIN sequence_of_statement END 说明: a. 声明部分 :类似于存储过程中的声明,预先定义块中要用到的变量.包含PL/SQL 变量,异常,游标等.如果没有变量需要定义,声明…
2018-07-1216:41:19 六.匿名块 .定义匿名块: declare 定义部分: ---可选部分 begin 执行部分: ---必选部分 exception 异常处理部分: ---可选部分 end; ---往控制台输出hello world begin dbms_output.put_line('hello world'); end; ---打开控制台输出开关 F5 set serveroutput on; ---定义变量,赋值给变量,输出变量值 ---; declare v_id…
pl/sql语言是oracle在sql上扩展的语言.1 过程.函数.触发器是在pl/sql编写2 过程.函数.触发器是在oracle中3 pl/sql的语句可以在java中直接调用 简单介绍 在sql—plus编写一个存储过程,该过程可以向某表中添加记录. 第一步:创建表create table mytest(name varchar2(20), passwd varchar2(20)); 第二步:创建过程create procedure mypro1 is begin--执行部分insert…
动态sql0.pl/sql块的限制 不能执行ddl操作(create.drop.alter): 不能执行部分dcl操作(grant.revoke). 1.语法动态sql:在执行时才能确定要执行的sql语句.在pl/sql块中编写动态sql语句时,需要将sql语句存放到字符串变量中,而且sql可以包含占位符.execute immediate dynamic_stringdynamic_string :是存放要被执行的sql语句的字符串变量. 2.用途可处理: ddl语句(create,alter…