oracle PL/SQL编程基础知识
在oracle中使用pl/sql来扩展SQL的功能,使得SQL能够更加的灵活,功能更加强大,效率更高。pl/sql让sql也能执行判断,循环等操作。主要记录一下pl/sql的基本语法和基本条件判断语句和循环语句供忘记了方便查阅。
1.pl/SQL的语法结构:
declare
//这部分用于声明变量
begin
//这部分用于处理业务逻辑
exception
//这部分用于处理例外也就是异常情况
end;
例如:
declare
uname varchar2(10);
hello varchar2(10) := 'helloworld'; --为变量赋值
vsal emp.sal%type; --声明一个引用类型的变量
pall emp%rowtype; --声明一个记录类型的变量
digit number:=#---提示用户输入,然后根据用户输入执行相应的操作
...
begin
dbms_output.put_line(hello);
exception
when exception_name then
//操作
end;
2.)pl/sql的条件判断语句
if 条件 then
语句;
elsif 条件then
语句;
else
语句;
end if;
例如:根据输入的年龄判断是处于哪个阶段的人
declare
age number := #
begin
if age < 18 then
dbms_output.put_line('你还是未成年人');//表示系统输出语句,类似于system.out.print();
elsif age > 18 and age <= 40 then
dbms_output.put_line('你是青年人');
else
dbms_output.put_line('你是中年人!');
end if;
end;
3.)pl/sql的循环语句
在pl/SQL中有三种循环结构。
3.1)while 条件 loop
语句块;
end loop;
例如:循环输出1-10的数。
declare
step number := 1;
begin
while step <= 10 loop
dbms_output.put_line(step);
step := step + 1;
end loop;
end;
3.2)loop 循环语句
loop
exit when 退出条件;
语句块;
end loop;
例如:输出1-9的数。
declare
step number := 1;
begin
loop
exit when step > 10;--当step>10退出循环
dbms_output.put_line(step || ' ');
step := step + 1;
end loop;
end;
3.3)for语句循环结构
for 循环变量 in n..N loop
语句块;
end loop;
例如:输出1-10之间的数。
declare
begin
for step in 1.. 10 loop
dbms_output.put_line(step);
end loop;
end;
案例1--使用PLSQL输出菱形
declare
m number := 10;
begin
for x in -m..m loop
for y in -m..m loop
if abs(y) + abs(x) <= m then
dbms_output.put('*');
else
dbms_output.put(' ');
end if;
end loop;
dbms_output.new_line();
end loop;
end;
案例2--使用PLSQL输出三角形。
declare
m number := 10;
begin
for x in reverse -m..m loop
for y in -m..m loop
if abs(y) + abs(x) <= m and x>=0 then
dbms_output.put('*');
else
dbms_output.put(' ');
end if;
end loop;
dbms_output.new_line();
end loop;
end;
以上就是pl/sql的基本语法以及基本的条件和循环结构。
oracle PL/SQL编程基础知识的更多相关文章
- Oracle Pl/SQL编程基础
Pl/SQL简介 提高应用程序的运行性能, 提供模块化的程序设计, 自定义标示符, 具有过程语言控制结构, 良好的兼容性, 处理运行错误. Pl/SQL语言基础 sql是关系数据库的基本操作语言. s ...
- Oracle PL/SQL 编程基础 实例
create table mytest(name varchar(20),password varchar(30)); create or replace procedure sp_pro2 is ...
- Oracle数据库编程:PL/SQL编程基础
2.PL/SQL编程基础: PL/SQL块: declare 定义部分 begin 执行部分 exception 异 ...
- [推荐]ORACLE PL/SQL编程详解之三:PL/SQL流程控制语句(不给规则,不成方圆)
原文:[推荐]ORACLE PL/SQL编程详解之三:PL/SQL流程控制语句(不给规则,不成方圆) [推荐]ORACLE PL/SQL编程详解之三: PL/SQL流程控制语句(不给规则,不成方圆) ...
- [推荐]ORACLE PL/SQL编程详解之一:PL/SQL 程序设计简介(千里之行,始于足下)
原文:[推荐]ORACLE PL/SQL编程详解之一:PL/SQL 程序设计简介(千里之行,始于足下) [推荐]ORACLE PL/SQL编程详解之一: PL/SQL 程序设计简介(千里之行,始于足下 ...
- [顶]ORACLE PL/SQL编程详解之二:PL/SQL块结构和组成元素(为山九仞,岂一日之功)
原文:[顶]ORACLE PL/SQL编程详解之二:PL/SQL块结构和组成元素(为山九仞,岂一日之功) [顶]ORACLE PL/SQL编程详解之二: PL/SQL块结构和组成元素(为山九仞,岂一日 ...
- ORACLE PL/SQL编程详解
ORACLE PL/SQL编程详解 编程详解 SQL语言只是访问.操作数据库的语言,并不是一种具有流程控制的程序设计语言,而只有程序设计语言才能用于应用软件的开发.PL /SQL是一种高级数据库程序设 ...
- [强烈推荐]ORACLE PL/SQL编程详解之七:程序包的创建与应用(聪明在于学习,天才在于积累!)
原文:[强烈推荐]ORACLE PL/SQL编程详解之七:程序包的创建与应用(聪明在于学习,天才在于积累!) [强烈推荐]ORACLE PL/SQL编程详解之七: 程序包的创建与应用(聪明在于学习,天 ...
- 【强烈强烈推荐】《ORACLE PL/SQL编程详解》全原创(共八篇)--系列文章导航
原文:[强烈强烈推荐]<ORACLE PL/SQL编程详解>全原创(共八篇)--系列文章导航 <ORACLE PL/SQL编程详解> 系列文章目录导航 ——通过知识共享树立个人 ...
随机推荐
- Codeforces 963A Alternating Sum ( 思维 && 数论 )
题意 : 题目链接 分析 : Tutorial 讲的很清楚 至于为什么这样去考虑 算是一个经验问题吧 如果一个问题要你给出模意义下的答案 就多考虑一下答案是要用逆元构造出来 也就说明有除法的存在 那么 ...
- jdbcTemplate进行CRUD,查询结果转json
通过Spring的jdbcTemplate作为dao层的框架,将获取到的字段名,及其值,通过put放在jsonObject或jsonArray中,将json返回. public class Sprin ...
- sqli-lab(14)
POST型的 双注入 0X01随便测试一下 在password输入"会报错 "#就不报错了 那么应该是“”的闭合 但是没有回显的值 只有报错的信息 那我们是不是该考虑从报错的语句 ...
- hibernate UML图
- springboot+mybatis+SpringSecurity 实现用户角色数据库管理(一)
本文使用springboot+mybatis+SpringSecurity 实现用户权限数据库管理 实现用户和角色用数据库存储,而资源(url)和权限的对应采用硬编码配置. 也就是角色可以访问的权限通 ...
- libusb获取usb设备的idVendor(vid),idProduct(pid),以及Serial Number
发表于2015/6/23 21:55:11 4594人阅读 最近在做关于usb设备的项目,用到了libusb,发现关于这个的函数库的介绍,讲解很少,下面仅仅是简单展示一些基本的使用方法,以备后用. ...
- NDK undefined reference to 'rand'
NDK 编译 结果报错undefined reference to 'rand' 最怪异的是armeabi-v7a armeabi的情况下有问题 但是arm64-v8a编译正常,用网上说的添加头文件s ...
- Android Studio 安装 Flutter
1 下载sdk https://flutter.dev/docs/get-started/install/windows 2 解压到自定义文件夹,并配置bin路径到环境变量path中 path添加 ...
- VGA接口一根针折了
注意!!要由 针 对照着 接口 看!!别看反了! VGA接头图如下: VGA接口,15根针,其对应接口定义如下: 1红基色 red 2 绿基色 green 3 蓝基色 blue 4 地址码 ID Bi ...
- ArcCatalog连接远程ArcGIS Server服务器
注意:本地机器登陆的用户名和密码必须与ArcGIS Server服务器上的用户名和密码完全一致,并加入到agsadmin和agsuser组中.重启电脑. (其实就是在自己的电脑上建立一个用户名,这 ...