PL/SQL程序设计基础语法详解(一)
2017-03-25 19:53
971 查看
一.什么是PL/SQL(Procedure Language/SQL)
概念:PLSQL是Oracle对sql语言的过程化扩展
指在SQL命令语言中增加了过程处理语句(如分支、循环等),使SQL语言具有过程处理能力。
PL/SQL的结构:
简单的PL/SQL程序
如果是在命令行中需要使用 set serveroutput on先打开显示
二.PL/SQL程序的基本语法
1.常量和变量
2.变量类型
3.引用型变量和记录型变量的使用
引用型变量的使用
记录型变量
3.if语句
三种格式:
4.循环语句
概念:PLSQL是Oracle对sql语言的过程化扩展
指在SQL命令语言中增加了过程处理语句(如分支、循环等),使SQL语言具有过程处理能力。
PL/SQL的结构:
declare 说明部分 (变量说明,光标申明,例外说明 〕 begin 语句序列 (DML语句〕… exception 例外处理语句 End;
简单的PL/SQL程序
如果是在命令行中需要使用 set serveroutput on先打开显示
declare --声明变量 begin -- 程序执行的主体 dbms_output.put_line('Hello World'); --输出语句 end;
二.PL/SQL程序的基本语法
1.常量和变量
2.变量类型
3.引用型变量和记录型变量的使用
引用型变量的使用
-- 查询并打印7839的姓名和薪水 declare -- 定义姓名和薪水的变量 pname emp.ename%type; --即引用emp表中ename列的类型 psal emp.sal%type; --即引用emp表中sal列的类型 begin -- 查询语句 赋值的两种方式 1.:= 2. into关键字 select ename,sal into pname,psal from emp where empno='7839'; dbms_output.put_line(pname ||'的薪水是'|| psal); end;
记录型变量
-- 查询并打印7839的姓名和薪水 declare -- 定义记录型变量,代表一行 dec_emp emp%rowtype; --即记录了emp表中一行的类型,使用的时候直接.调用 begin -- 查询语句 select * into dec_emp from emp where empno='7839'; --使用的时候 dec_emp.sal 变量名.列名 dbms_output.put_line(dec_emp.ename ||'的薪水是'|| dec_emp.sal); end;
3.if语句
三种格式:
格式一: IF 条件 THEN 语句1; 语句2; END IF;
格式二: IF 条件 THEN 语句序列1; ESLE 语句序列 2; END IF;
格式三(主要使用这种): IF 条件 THEN 语句; ELSIF 条件 THEN 语句; ELSE 语句; END IF;
-- 判断用户键盘上输入的数字是几 -- 接收键盘的输入 -- num是地址值,在地址值上保存了输入的数字 accept num prompt '请输入一个数字'; declare -- 定义变量保存数字 pnum number := # begin if pnum = 0 then dbms_output.put_line('您输入的数字是0'); elsif pnum = 1 then dbms_output.put_line('您输入的数字是1'); elsif pnum = 2 then dbms_output.put_line('您输入的数字是2'); else dbms_output.put_line('其他数字'); end if; end;
4.循环语句
格式一: WHILE 条件 LOOP 语句序列; END LOOP; ----------------------------------------------- 例如: WHILE total <= 25000 LOOP .. . total : = total + salary; END LOOP;
格式二(主要使用这种,EXIT的地方容易理解): Loop EXIT [when 条件]; 语句序列 End loop
格式三: FOR I IN 1 . . 3 LOOP 语句序列 ; END LOOP ;
-- 打印1~10的数字 declare pnum number := 1; begin loop --循环 --退出条件 exit when pnum > 10; dbms_output.put_line(pnum); -- 加1 pnum := pnum + 1; end loop; end;
相关文章推荐
- [推荐]ORACLE PL/SQL编程详解之一:PL/SQL 程序设计简介(千里之行,始于足下)
- ORACLE PL/SQL编程详解之一:PL/SQL 程序设计简介
- PL/SQL基础语法入门
- PL/SQL developer基础语法学习(一)之变量
- Oracle数据库之PL/SQL程序设计基础
- [推荐]ORACLE PL/SQL编程详解之一:PL/SQL 程序设计简介(千里之行,始于足下)
- 【DB.PL/SQL】PL/SQL —— 语法基础
- 详解Sql基础语法
- Oracle PL/SQL基础语法 ——Oracle Database 11g R2
- PL/SQL developer基础语法学习(一)
- [推荐]ORACLE PL/SQL编程详解之一:PL/SQL 程序设计简介(千里之行,始于足下)
- PL/SQL基础语法
- ORACLE PL/SQL编程详解之一:PL/SQL 程序设计简介
- oracle--PL/SQL基础语法
- PL/SQL程序设计之存储过程(基础篇)
- PL/SQL程序设计_基本语法
- ORACLE PL/SQL编程详解之一:PL/SQL 程序设计简介
- ORACLE之PL/SQL简单基础语法学习(二)
- PL/SQL基础语法
- ORACLE PL/SQL编程详解之一:PL/SQL 程序设计简介(千里之行,始于足下)