PL/SQL概念
一、 为什么把SQL语句组合成PL/SQL语句块效率会更高?
使用PL/SQL语句块中的SQL语句更加高效,原因主要是这样做可以大幅降低网络流量,应用程序也会变得更加高效。
当客户端计算机发出一条SQL语句时,服务器的数据库处理这个请求,并把结果集返回给客户端。因此,一条SQL语句涉及2次网络传输。如果发出多个SELECT语句,网络流量会大幅增长。例如,4条SELECT语句会带来8次网络传输。如果这些语句是某PL/SQL语句块的一部分,只需要2次网络传输,就相当于一条SELECT语句。
二、命名和匿名PL/SQL语句块之间存在什么差别?
命名PL/SQL语句块存储于数据库中,之后可以使用名称来引用它们。匿名PL/SQL语句块没有名称,不会存储在数据库中,后期无法引用。
三、PL/SQL语句块包含三部分:声明部分、可执行部分以及异常处理部分。可执行部分是语句块中唯一要求必须存在的部分。声明部分和异常处理部分是可选的。PL/SQL语句块的结构通常如下所示:
DECLARE
Declaration statements
BEGIN
Executable statements
EXCEPTION
Exception-handling statements
END;
四、 PL/SQL语句块的编译过程包含哪些步骤?
编译过程包含语法检查、绑定以及伪代码生成。语法检查涉及检查PL/SQL代码中的语法或者编译错误。在纠正语法错误以后,会给每个变量分配存储地址,以保存Oracle数据。这个过程称为绑定。接下来,会生成PL/SQL语句块的伪代码。伪代码是PL/SQL引擎的指令列表。对于命名语句块,伪代码会存储在数据库中,并在程序下一次被执行时使用。
五、 PL/SQL中包含两种注释:单行注释(--)和 多行注释(/* */)。最好使用单行注释(--),而避免使用多行注释(/* */)。因为单行注释的代码段可以被注释掉,而多行注释的代码段不能被注释掉。这样单行注释有利于代码调试。
六、VARCHAR2,存储变长的字符数据,必须显性指定长度,可指定的字符变量最大长度为32767字节。数据库列的最大宽度为4000字节。
CHAR,存储定长的字符数据,默认为1字节,可指定的字符变量最大长度为32767字节。数据库列的最大宽度为2000字节。
七、SELECT INTO 语法
DECLARE
v_dept number(2);
BEGIN
select deptno
into v_dept
from dept where dname='RESEARCH';
DBMS_OUTPUT.PUT_LINE('The dept num is: '||v_dept);
END;
PL/SQL概念的更多相关文章
- ORACLE PL/SQL 实例精解之第一章 PL/SQL概念
1.传统一层一层传数据,而PLSQL作为独立的单元返回客户端,减少查询,减少网路传输的往返,高效 2.PL/SQL语句块 分为两种:命名(子程序,函数,包保存在数据库中,后期可以根据名称进行引用),匿 ...
- 【PL/SQL编程】SQL与PL/SQL的区别
SQL概念: SQL是结构化查询语言,由数据定义语言.数据操纵语言.数据控制语言构成,它不面向过程,即前一条语句与后一条语句无关.它没有流程控制,也不存在变量. PL SQL概念: PL/SQL ...
- Oracle和MySql的分页查询区别和PL/SQL的基本概念
Oracle和MySql的分页查询区别: Oracle的分析查询,之前Oracle的分页是使用伪列 ROWNUM 结合子查询实现,mysql的分页更简单,直接使用 LIMIT 关键字就可以实现 ...
- PL/SQL基本概念
首先明确PL/SQL主要作用作用: SQL语言适合管理关系型数据库但是它无法满足更复杂的数据处理,所以产生PLSQL.PLSQL用户创建存储过程.函数.触发器.包及用户自定义的函数. 特点: PLSQ ...
- Oracle PL/SQL随堂笔记总结
1.pl/sql编程 2.存储过程 3.函数 4.触发器 5.包 6.pl/sql基础 -定义并使用变量 7.pl/sql的进阶 8.oracle的视图 1.pl/sql编程 1.理解oracle的p ...
- 每周一书《Oracle 12 c PL(SQL)程序设计终极指南》
本周为大家送出的书是<Oracle 12 c PL(SQL)程序设计终极指南>,此书由机械工业出版社出版, 孙风栋,王澜,郭晓惠 著. 内容简介: <Oracle 12c PL/SQ ...
- PL/SQL入门理解(一)
1.PL/SQL概述 1)概念 pl/sql(procedural language)是Oracle在标准sql语言的基础上的扩展,可以实现定义变量.使用逻辑控制语句等 作用:默认oracle一次只能 ...
- 【Java EE 学习 29 上】【PL/SQL】【存储过程】【存储函数】【触发器】
一.PL/SQL简介 1.概念:PL/SQL语言是Oracle数据库专用的一种高级程序设计语言,是对标准SQL语言进行了过程化扩展的语言. 2.功能:既能够实现对数据库的操作,也能够通过过程化语言中的 ...
- PL/SQL Developer主数据库连接和窗口连接切换
Oracle开发者估计对PL/SQL Developer都非常熟悉了,里面有些小的功能点大概还有些初学者没发现.PL/SQL Developer支持多连接多窗口,下面详细说说. 主连接的概念 打开PL ...
随机推荐
- [RabbitMQ+Python入门经典] 兔子和兔子窝
原文联接: http://blogs.digitar.com/jjww/2009/01/rabbits-and-warrens/ RabbitMQ作为一个工业级的消息队列服务器,在其客户端手册列表的P ...
- Java学习笔记四——运算符
算术运算符 加减乘除(+.-.*./)就不说了. 求余运算符% 描述:第一个操作数除以第二个操作数,得到一个整除的结果后剩下的值就是余数 注意:求余预算的结果不一定总是整数,当操作数是浮点数时,结果可 ...
- LaTex随笔
最近简单接触了LaTex排版,留下一些笔记供日后参考. 1.基本格式 \documentclass{article}\title{……}\begin{document}\maketitle\secti ...
- [POI2008]KLO && POC
题意:给定一个序列 s1, s2,...sn,以及一个k,求一个连续的k个数,把s[i]...s[i+k-1]变成一个数s',使得sigma(|s[j]-s'|)(i<=j<=i+k-1) ...
- Android网页中tel,sms,mailTo,Intent,Market协议用法总结
tel:协议---拨打电话 <a href="tel:">调出拨号界面</a> <a href="tel:10086">调 ...
- 【转载】Fiddler进行模拟Post提交json数据,总为null解决方式
Request Headers: User-Agent: FiddlerHost: localhost:3248Content-Type: application/json; charset=utf- ...
- HTTP基本认证
众所周知,Web使人们可以很方便的访问分布在世界各个角落里信息.但是仅仅是方便还是不够的,并不是所有的信息都适合在互联网上公开访问,我们需要保证只有特定的人才能看到我们的敏感信息并且执行特定的操作. ...
- 算法:POJ1008 Maya Calendar
此题非常水,不做说明. package practice; import java.io.BufferedInputStream; import java.util.Scanner; /** * @a ...
- Java对象表示方式1:序列化、反序列化和transient关键字的作用
平时我们在Java内存中的对象,是无法进行IO操作或者网络通信的,因为在进行IO操作或者网络通信的时候,人家根本不知道内存中的对象是个什么东西,因此必须将对象以某种方式表示出来,即存储对象中的状态.一 ...
- Nim教程【十】
openarray类型 注意:openarray类型只能用于参数 固定大小的数组虽然性能不错,但过于呆板,使用取来不是很方便 对于一个方法来说,传入参数如果是一个数组,最好是不要限制数组的长度 也就是 ...