OCM读书笔记(2) - PL/SQL 基础
1. % type 用法,提取% type所在字段的类型
declare
myid dept.deptno % type;
myname dept.dname % type;
begin
select deptno, dname into myid, myname from dept where deptno = 10;
dbms_output.put_line(myid);
dbms_output.put_line(myname);
end;2. % rowtype 用法,提取% rowtype所在字段的类型
declare
type type_dept is table of dept % rowtype index by binary_integer;
tb type_dept;
begin
tb(1).deptno:='001';
tb(2).deptno:='002';
dbms_output.put_line(tb.COUNT);
end;
/3. TYPE用法,相当于结构体
declare
lv_order_date DATE:=sysdate;
lv_last_tr varchar2(5) default '001';
lv_last varchar2(10) not null:='us';
TYPE type_test is record(
myid dept.deptno % type,
myname dept.dname % type
);
rec type_test;
begin
dbms_output.put_line(lv_last);
select deptno, dname into rec from dept where deptno=10;
dbms_output.put_line(rec.myid);
dbms_output.put_line(rec.myname);
end;
/4. 游标的使用
declare
g_id number(2) := 20;
find_not char(1) := 'N';
cursor cur is select * from dept;
TYPE type_dept is record(
myid dept.deptno % type,
myname dept.dname % type,
myaddr dept.loc % type
);
rect type_dept;
begin
open cur;
loop
fetch cur into rect;
exit when cur% NOTFOUND;
if rect.myid = g_id then
dbms_output.put_line('Find it!!');
dbms_output.put_line('DEPT NO: ' || rect.myid);
dbms_output.put_line('DNAME: ' || rect.myname);
dbms_output.put_line('LOC: ' || rect.myaddr);
end if;
end loop;
close cur;
if find_not = 'N' then
dbms_output.put_line('No Record');
end if;
end;
/5. for循环
begin
for i in 1..5 loop
dbms_output.put_line(i);
end loop;
end;
/6. loop循环
declare
v number := 1;
begin
loop
exit when v > 5;
dbms_output.put_line(v);
v := v+1;
end loop;
end;
/ 7. while循环
declare
v number := 1;
begin
while v <= 5 loop
dbms_output.put_line(v);
v := v+1;
end loop;
end;
/
OCM读书笔记(2) - PL/SQL 基础的更多相关文章
- 《玩转Django2.0》读书笔记-Django建站基础
<玩转Django2.0>读书笔记-Django建站基础 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.网站的定义及组成 网站(Website)是指在因特网上根据一 ...
- 《Essential C++》读书笔记 之 C++编程基础
<Essential C++>读书笔记 之 C++编程基础 2014-07-03 1.1 如何撰写C++程序 头文件 命名空间 1.2 对象的定义与初始化 1.3 撰写表达式 运算符的优先 ...
- Oracle实战笔记(第六天)之PL/SQL基础
一.PL/SQL介绍 1.概念 PL/SQL也是一种程序语言,叫做过程化SQL语言(Procedural Language/SQL).PL/SQL是Oracle数据库对SQL语句的扩展.在普通SQL语 ...
- PL/SQL基础2(笔记)
1 第一个PL/SQL的程序 DECLARE BEGIN DBMS_OUTPUT.PUT_LINE('Hello World!'); END; / --2一个简单的PL/SQL程序 DECLARE v ...
- PL/SQL基础1(笔记)
--基本结构DECLARE--变量声明部分:在此声明PL/SQL用到的变量,类型,游标,以及局部的存储过程和函数BEGIN --执行部分:过程及SQL语句,即程序的主要部分 EXCEPTION --执 ...
- 慕课网笔记之oracle开发利器-PL/SQL基础
实例1--if语句 /* 慕课网Oracle数据库开发必备之PL/SQL_2-3 判断用户从键盘输入的数字 1.如何使用if语句 2.接收一个键盘的输入(字符串) */ set serveroutpu ...
- Oracle442个应用场景---------PL/SQL基础
----------------------------------------------------------------------------------- 备份和恢复数据库略过.在后面解说 ...
- Oracle数据库之PL/SQL基础
介绍PL/SQL之前,先介绍一个图像化工具:Oracle SQL Developer 在oracle的开发过程中, 我们难免会使用第三方开发的软件来辅助我们书写SQL, pl/sql是一个不错的sql ...
- PL SQL 基础
Oracle之PL/SQL学习笔记 自己在学习Oracle是做的笔记及实验代码记录,内容挺全的,也挺详细,发篇博文分享给需要的朋友,共有1w多字的学习笔记吧.是以前做的,一直在压箱底,今天拿出来整 ...
随机推荐
- 安装虚拟机时出现The Microsoft Runtime DLL
参考文档: http://zhidao.baidu.com/link?url=1E4vr6ToPGm_kAZw4voOqzrPtzGaSIqy3kvcGXehs3KJAkirNKOHJbrsxec3f ...
- 基于SOAP的xml网络交互心得
感谢小二同学将遇到的问题分享给我们,再此给以掌声.如果看不懂下面文章的建议查找一下HTTP协议的文艺,对HTTP协议要有个概念. XML网络交互心得 目录 一. xml解析 1.根路径下 2. ...
- Python数据结构之二叉树
本来打算一个学期分别用C++.Python.Java实现数据结构,看来要提前了 这个是Python版本,我写的数据结构尽量保持灵活性,本文bt1是一般的插入法建立二叉树结构,bt2就是可以任意输入,至 ...
- BZOJ 3477: [Usaco2014 Mar]Sabotage( 二分答案 )
先二分答案m, 然后对于原序列 A[i] = A[i] - m, 然后O(n)找最大连续子序列和, 那么此时序列由 L + mx + R组成. L + mx + R = sum - n * m, s ...
- (Relax njuptoj)1009 数的计算(DP)
其实DP 的关键在于找到子问题的结构. 我们规定arr[i][j]为在j左边填写i时的数的个数,很明显: arr[i][j]=a[0][i]+a[1][i]+...+arr[i/2][i](i&l ...
- Qt 多线程与数据库操作需要注意的几点问题
源地址:http://blog.csdn.net/goldenhawking/article/details/10811409 彻底抛弃MFC, 全面应用Qt 已经不少时间了.除了自己看书按步就班做了 ...
- 【PAT】1041. Be Unique (20)
题目链接:http://pat.zju.edu.cn/contests/pat-a-practise/1041 题目描述: Being unique is so important to people ...
- PS 滤镜算法原理 ——马赛克
% method : 利用邻域的随意一点取代当前邻域全部像素点 %%%% mosaic clc; clear all; addpath('E:\PhotoShop Algortihm\Image Pr ...
- 动态Pivot(2)
原文 http://book.51cto.com/art/200710/58875.htm 存储过程sp_pivot的实现包含糟糕的编程习惯和安全隐患.就像我在本章的前面提到的,微软强烈建议不要在用 ...
- Eclipse相关集锦第二季
Eclipse相关的问题第二季开始了,这些问题都是我平时遇到的,然后记录下来备忘,帮助到别人最好不过了. 1.Unable to execute dex: GC overhead limit exce ...