oracle plsql基本语法
oracle plsql 基本语法
--plsql默认规则:plsql赋值用":=" plsql判断用"=" plsql输入用"&"
--输入输出
declare
v_str varchar2(20);
begin
-- Dbms_Output.put('hello');
-- Dbms_Output.put('xxxxxxxxxxxxxxxxxx');
-- Dbms_Output.put_line(''); put_line('')才会最终输出,put只会在缓存中
v_str:='&str';
Dbms_Output.put_line(v_str);
end;
--plsql的判断if句式
declare
v_age number:=0;
begin
v_age:='&age';
if(v_age<18) then
Dbms_Output.put_line('未成年');
elsif(v_age>18 and v_age<28) then
Dbms_Output.put_line('青年');
else
Dbms_Output.put_line('其他年龄');
end if;
end;
--plsql的判断case句式
declare
v_empno scott.emp.empno%type;
v_sal scott.emp.sal%type;
begin
v_empno:='&empno';
select sal into v_sal from scott.emp where empno=v_empno;
case--case开始
when v_sal<1000 then
Dbms_Output.put_line('底层员工');
when v_sal>=1000 and v_sal <=2000 then
Dbms_Output.put_line('普通员工');
when v_sal>2000 and v_sal <=3000 then
Dbms_Output.put_line('中级骨干');
when v_sal>3000 then
Dbms_Output.put_line('管理层');
else --默认
Dbms_Output.put_line('未知级别');
end case;--case结束
end;
--练习 输入职员编号 判断该职业叫做king则输出老板,叫做scott输出作者,其他输出普通员工
declare
v_empno scott.emp.empno%type;
v_ename scott.emp.ename%type;
begin
v_empno:='&empno';
select ename into v_ename from scott.emp where empno=v_empno;
case
when v_ename='KING' then
Dbms_Output.put_line('老板');
when v_ename='SCOTT' then
Dbms_Output.put_line('作者');
else
Dbms_Output.put_line('其他员工');
end case;
end;
select * from emp;
--简化case句式 直接是一条sql查询语句
select empno,
case ename
when 'KING' then '老板'
when 'SCOTT' then '作者'
else '普通职员'
end 身份
from emp;
--plsql 循环while句式:从1累加到100
declare
v_i number:=1;
v_sum number:=0;
begin
while(v_i<=100) loop
v_sum:=v_sum+v_i;
v_i:=v_i+1;
end loop;
Dbms_Output.put_line('累加结果为:'||v_sum);
end;
--plsql 循环do ... while句式:从1累加到100
declare
v_i number:=1;
v_sum number:=0;
begin
while(1=1) loop
v_sum:=v_sum+v_i;
v_i:=v_i+1;
exit when(v_i>100); --像java中的break
end loop;
Dbms_Output.put_line('累加结果为:'||v_sum);
end;
--plsql 循环for句式:从1累加到100
declare
v_i number:=1;
v_sum number:=0;
begin
for v_i in /*reverse*/ 1..100 loop
Dbms_Output.put_line('v_i:'||v_i);
v_sum:=v_sum+v_i;
end loop;
Dbms_Output.put_line('累加结果为:'||v_sum);
end;
--练习 使用while循环输出* ,打印出如下图形
declare
v_triLength number;
v_i number:=1;
v_j number:=1;
begin
v_triLength:='&边长';
while( v_i<=v_triLength) loop
v_j:=1;
--打空格
while(v_j<=v_triLength-v_i) loop
Dbms_Output.put(' ');
v_j:=v_j+1;
end loop;
--打星星
v_j:=1;
while(v_j<=v_i) loop
Dbms_Output.put('*'||' ');
v_j:=v_j+1;
end loop;
Dbms_Output.put_line('');
v_i:=v_i+1;
end loop;
end;
oracle plsql基本语法的更多相关文章
- Oracle的基本语法,存储函数及触发器
1.PL/SQL PL/SQL是Oracle对 ql语言的过程化扩展,指在 SQL 命令语言中增加了过程处理语句,使SQL语言具有过程处理能力.把 SQL 语言的数据操纵能 力与过程语言的数据 ...
- Oracle常用基础语法(未完待补和操作)
这篇博客主要是Oracle常用基础语法, 另外,存储过程和存储函数很重要,这个后期看视频学习,还有DB优化,另外,还有plsql develop和navicat的使用,重点是数据的导入导出: ---- ...
- Oracle/PLSQL存储过程详解
原文链接:https://blog.csdn.net/zezezuiaiya/article/details/79557621 Oracle/PLSQL存储过程详解 2018-03-14 17:31: ...
- Oracle/PLSQL: ORA-06550
参考: http://blog.csdn.net/haiross/article/details/20612135 Oracle/PLSQL: ORA-06550 Learn the cause an ...
- Oracle存储过程基本语法介绍
Oracle存储过程基本语法 存储过程 1 CREATE OR REPLACE PROCEDURE 存储过程名 2 IS 3 BEGIN 4 NULL; 5 END; 行1: CREATE OR RE ...
- Oracle Update 语句语法与性能分析 - 多表关联
Oracle Update 语句语法与性能分析 - 多表关联 为了方便起见,建立了以下简单模型,和构造了部分测试数据: 在某个业务受理子系统BSS中, SQL 代码 --客户资料表 create ...
- Oracle存储过程基本语法 存储过程
Oracle存储过程基本语法 存储过程 1 CREATE OR REPLACE PROCEDURE 存储过程名 2 IS 3 BEGIN 4 NULL; 5 END; 行1: CREATE OR RE ...
- Oracle PLSQL读取(解析)Excel文档
http://www.itpub.net/thread-1921612-1-1.html !!!https://code.google.com/p/plsql-utils/ Introduction介 ...
- MyEclipse+Weblogic+Oracle+PLSQL配置注意事项
Weblogic配置详情:<Weblogic安装与配置图文详解>Oracle+PLSQL配置详情:<PL/SQL访问远程Oracle服务器(多种方式)>MyEclipse配置: ...
随机推荐
- Spark2.x(六十三):(Spark2.4)Driver如何把Task(闭包等)分配给Executor
在Spark中一个appliation可能包含多个job,每个job都是由SparkContext#runJob(...)触发的,一个Job下包含1个或多个Stage,Job的最后一个stage为Re ...
- swap 释放
#swap 释放 -------------------------------- swapoff -a wwapon -a
- Docker 安装 ActiveMQ
搜索 ActiveMQ 镜像 docker search activemq 获取 ActiveMQ 镜像 docker pull webcenter/activemq 查看本地镜像 docker im ...
- MQTT研究之EMQ:【EMQX使用中的一些问题记录(1)】
issue 1. EMQX的共享订阅 EMQX是一个非常强大的物联网通信消息总线,基于EMQX开展应用开发,要注意很多配置细节问题,这里要说到的就是共享订阅以及和cleanSession之间的关系问题 ...
- pycharm 生成requirements.txt
在命令行中输入 pip freeze>requirements.txt 1 安装requirements文件中的包 pip install -r requirements.txt
- vmare_mac 关闭完整性检查
今天在vmware 15 安装mac10.13,安装之后不能全屏,查了很多资料最后完美解决 首先我们需要进入mac的恢复模式 等待出现苹果LOGO,直到进度条加载完毕 然后打开实用工具-终端 关闭SI ...
- 审阅模式中word保存不了
word保存不了 觉得有用的话,欢迎一起讨论相互学习~Follow Me 昨天写论文出现一个怪事,发现自己word内容按ctrl+S 进行保存时可以的,但是当按X进行关闭时,出现 关闭不了,问我是否需 ...
- c++ 二进制方式读取文件 读取特殊类型数据
#include <iostream> #include <fstream> using namespace std; /* 二进制方式进行读写文件,可以读写 各种各样数据类型 ...
- oracle plsql 统计
set serveroutput on DECLARE cursor cemp is select to_char(hiredate,'yyyy') from emp ; phiredate ); c ...
- Java 待学习知识
Java 工厂模式和策略模式 Java 面向对象与面向接口的设计模式 Java 六大设计原则 - 单一职责原则 设计模式之禅 大话设计模式