配色: 字号:
第一章plsql的介绍与基本语法
2017-05-16 | 阅:  转:  |  分享 
  
pl/sql的介绍与基本语法一.什么是pl/sqlpl/sql(procedurallanguage/sql)是oracle在标准的sq
l语言上的扩展.pl/sql不仅允许嵌入sql语言,还可以定义变量和常量,允许使用条件语句和循环语句,允许使用例外处理各种错误,
这样使得它的功能变得更加强大。①提高应用程序的运行性能②模块化的设计思想[分页的过程,订单的过程,转账的过程..]③减少网络传输量
④提高安全性二、pl/sql块介绍块(block)是pl/sql的基本程序单元,编写pl/sql程序实际上就是编写pl/sql块。
要完成相对简单的应用功能,可能只需要编写一个pl/sql块;但是如果要想实现复杂的功能,可能需要在一个pl/sql块中嵌套其它的p
l/sql块.简单分类:块(编程):过程(存储过程)、函数、触发器、包…■块结构示意图pl/sql块由三个部分构成:定义部分、执
行部分、例外处理部分.如下所示:declear可选/声明(定义)部分-----定义常量、变量、游标、例外、复杂数据类型
/begin必选/执行部分-----要执行的pl/sql语句和sql语句/exception可选/例外处理部分
----处理运行的各种错误/--when....then...--when....then...end;
对于PL/SQL,需要注意以下几点:1.在PL/SQL中,变量必须在使用之前声明。2.PL/SQL块中的每一条语句都必须以分号结
束,SQL语句可以是多行的,但分号表示该语句的结束。一行中可以有多条SQL语句,它们之间以分号分隔。每一个PL/SQL块由decl
are或begin开始,以end结束。3.declare,begin,exception后面没有分号,而end语句后面必须带有分号
。4.在PL/SQL中可以使用的SQL语句有:Insert,update,delect,select...into,commit
,rollback,savepoint。提示:在PL/SQL中只能用SQL语句中的DML部分,不能用DDL部分,如果在PL/SQL
中使用DDL(如createtable等)的话,只能以动态的方式来使用。■编写规范①注释单行注释--selectfro
mempwhereempno=7788;--取得员工信息多行注释/..../来划分②标识符号的命名规范1)当定义变量时
,建议用v_作为前缀v_sal2)当定义常量时,建议用c_作为前缀c_rate3)当定义游标时,建议用_cursor作为后缀
emp_cursor;4)当定义例外时,建议用e_作为前缀e_error案例练习准备工作:setserveroutput
on例1:hellowrold程序begindbms_output.put_line(''helloworld'');end;例2
.有定义和执行部分的块declare--声明变量v_enamevarchar2(5);begin--通过select
...into...语句为变量赋值--被赋值的变量与SELECT中的列名要一一对应selectenameinto
v_namefromempwhereempno=&no;--(“no”是随意定义的值,aa,bb都可以,但不能没有。)-
-打印变量的值dbms_output.put_line(''雇员名:''||v_name);end;&:表示要接收从控制台输
入的变量。||:连接符例3.使用多个变量(顺序要一一对应)declare--声明变量v_namevarchar2(25
);v_emailvarchar2(25);v_salarynumber(8,2);v_job_idvarchar2
(10);begin--通过select...into...语句为变量赋值--被赋值的变量与SELECT中的列名要一
一对应selectlast_name,email,salary,job_idintov_name,v_email,
v_salary,v_job_idfromemployeeswhereemployee_id=186;--打印
变量的值dbms_output.put_line(v_name||'',''||v_email||'',''||v_salary||'',''||v_job_id);end;
献花(0)
+1
(本文系胡小哈526首藏)