set serveroutput on;
declare
--默认值的bianliang
v_a number:=0;
--
v_b integer;
--用stud.id 的类型
v_id stud.id%type;
--
nm stud.name%type;
begin
nm:='jack';
v_id:=89;
DBMS_OUTPUT.PUT_LINE('你的名字是:'||nm||'你的id'||v_id);
end;
---调用splql需要权限
grant debug connect session to 用户名;
grant debug any procedure to 用户名;
-------------------
--------接受用户输入-----------
accept abc prompt '输入年龄';
declare
age integer;
begin
--用取地址获取abc中的值
age:=&abc;
DBMS_OUTPUT.PUT_LINE('age is :'||age);
end; --查询stud表中有多少行记录count
declare
v_count integer;
v_avg numeric(10,2);
begin
--将查询结果设置给变量
select count(1),avg(id) into v_count,v_avg from stud;
DBMS_OUTPUT.PUT_LINE('人数'||v_count||'avg is :'||v_avg);
end;
select * from stud;
---------------------------------------------------------
-----------------------case语句----------------------------------
--------------------------------------------------------
--case when then语句,只能设置值
drop table stud1;
create table stud1(
id int,
name varchar(30),
age int,
sex char(1)check (sex in('1','0'))
);
insert into stud1 values(7,'k7',20,2);
insert into stud1 values(2,'k2',22,0);
insert into stud1 values(3,'k3',24,1);
--第一种方法
select * from stud1;
select id,name,age,(case sex when '1'then '男'else '女'end)
as sex from stud1;
--第二方法
select id,name,age,(case when sex='1'then '男' else '女'end)
as sex from stud1;
--多个when
select id,name,age,(case when sex='1' then '男的'when sex='2'then '不知道'
else'女的'end)as sex from stud1;
--利用plsql块中使用查询是男还是女
---------------------------------------------------
declare
v_result varchar(30);
v_id integer;
begin
v_id:=&id;
--先查询
select sex into v_result from stud1 where id=v_id;
v_result :=
case v_result
when '1' then '男'
when '0' then '女'
else '不知道'
end;
DBMS_OUTPUT.PUT_LINE('编号为'||v_id||'的是:'||v_result);
end;

PL/SQL语句块提高1+case语句的更多相关文章

  1. 同样的一句SQL语句在pl/sql 代码块中count 没有数据,但是直接用SQl 执行却可以count 得到结果

    pl/sql 代码块: SELECT count(distinct t2.so_nbr) INTO v_count2 FROM KFGL_YW_STEP_qd t2 WHERE t2.partitio ...

  2. Shell编程之条件语句:if、case语句

    Shell编程之条件语句:if.case语句               一.条件测试                1)test命令测试                2)整数值比较         ...

  3. PL/SQL第三章 基础查询语句

    --查询所有列 select * from tab_name|view_name; SELECT * FROM emp; SELECT * FROM (SELECT * FROM emp); --查询 ...

  4. PL/SQL编程-块编程

    (1). 简单分类                           |————过程(存储过程)                           |                        ...

  5. oracle 中使用 pl/sql代码块

    1.写匿名块,输入三角形三个表的长度.在控制台打印三角形的面积. declare -- (p=(a+b+c)/2) --声明三角形的面积 三条边 的 v_a number (10,2):=&n ...

  6. try catch finally语句块中存在return语句时的执行情况剖析

    2种场景 (1) try中有return,finally中没有return(注意会改变返回值的情形);(2) try中有return,finally中有return; 场景代码分析(idea亲测) 场 ...

  7. oracle pl/sql中的循环及if语句

    for循环 /* for循环打印1到10 */ set serveroutput on; declare begin .. loop dbms_output.put_line(i); end loop ...

  8. PL/SQL第四章 where子语句

    -- 学习where语句 -- 1.学会where子句中使用常规比较符 -- 常规比较操作符:=,<>(不等于),!=,>=,<=,>,< -- 当区分大小写时,可 ...

  9. pl/sql快速输入select * from等语句快捷键设置

    1.工具-->首选项 2.编辑器-->编辑 3.定义快捷键 -- > 保存 4.快捷键+回车就可以出现

随机推荐

  1. JavaScript模块化编程 - CommonJS, AMD 和 RequireJS之间的关系

    这几天在学习CommonJS的时候突然在StackOverflow上搜索到一个非常好的一个帖子,是关于CommonJS, AMD和RequireJS之间的关系的问答贴.我感觉写的非常好,鉴于没有找到相 ...

  2. noip2015运输计划

    二分+LCA+查分前缀和 #include<iostream> #include<cstring> #include<cstdio> #include<alg ...

  3. VS2012 编写C++程序的时候DOS窗口一闪而过解决办法。

    在我每次通过VS2012 运行C++程序的时候,DOS窗口在显示结果的时候都是一闪而过.这样让人没法观察输出的结果.经试验找到了一较好的解决办法: 首先包含头文件"stdlib.h" ...

  4. ECSTORE验证码优化

    用ecstore的朋友应该知道,ecstore的验证码超级鸡肋. 特别是字母和数字混合,根本就看不懂写的是什么? 数字还好,但是字母就别提了.而且还小. 索性就把验证码换掉.研究一下发现,ecstor ...

  5. POJ3253 Haffman

    POJ3253 分析: 简单的哈弗曼树的应用. AC代码: //Memory: 316K Time: 16MS #include <iostream> #include <cstri ...

  6. pyqt5通过文本对话框打开文件

    点击按钮,打开文本对话框,找一人文件,打开并显示内容 QFIleDialog                                                              ...

  7. Hdu1097(计算a的b次幂最后一位数值)

    #include <stdio.h> #include <math.h> int main() { int Num1,Num2; while(scanf("%d %d ...

  8. 移动端远程关闭PC端实现(一)需求设计

    公司有台半新不旧的电脑,因无甚大用,就拿来做了服务器,服务于民.服务器所提供的功能不是太多,无非是数据库以及svn服务. 公司每天下班会断电,我们吧会常常忘记关闭服务器,所以服务器非正常关机的次数约等 ...

  9. Java学习笔记--“==”与"equals"

    java中的数据类型,可分为两类: 1. 基本数据类型,也称原始数据类型.byte,short,char,int,long,float,double,boolean 他们之间的比较,应用双等号(==) ...

  10. CryEngine3教程合辑

    转载自http://tieba.baidu.com/p/3663800102 作者:Tytaa     中文名称: CryEngine游戏关卡设计训练视频教程第一季 外文名称: 3DMotive In ...