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 ...
随机推荐
- VIM使用(二) 浏览内核源代码
为了实现类似SourceInsight功能,通过VIM+Ctags+Cscope+Taglist+Source Explore +NERD Tree实现. 一, 安装插件 1)安装Ctags 和Csc ...
- Texture2D.GetPixelBilinear(float u, float v)的使用,官方例子注释
using UnityEngine; using System.Collections; public class TEST : MonoBehaviour { public Texture2D so ...
- easyui 折叠数据表格使用
因为要用到折叠数据表格 但是官网上的例子不能展示 费了好大劲 走了很多弯路 现在能显示出数据 以前大多都是看别人写的文章 自己解决问题的时候几乎没记录过 现在想想真不是好习惯 特此记录分享出来 有需要 ...
- Android 自定义View 三板斧之二——组合现有控件
通常情况下,Android实现自定义控件无非三种方式. Ⅰ.继承现有控件,对其控件的功能进行拓展. Ⅱ.将现有控件进行组合,实现功能更加强大控件. Ⅲ.重写View实现全新的控件 上文说过了如何继承现 ...
- 修改TFS2013服务账户或者密码
修改TFS2013服务账户或者密码 TFS作为微软软件开发的全生命周期管理解决方案,可以很好的与windows的域管理结合使用,方便多系统下用户的管理和授权.如果TFS使用的服务账户设置的域账户密码过 ...
- [C#进阶系列]专题二:你知道Dictionary查找速度为什么快吗?
一.前言 在之前有一次面试中,被问到你了解Dictionary的内部实现机制吗?当时只是简单的了问答了:Dictionary的内部结构是哈希表,从而可以快速进行查找.但是对于更深一步了解就不清楚了.所 ...
- ubuntu笔记
安装包 sudo dpkg -i xxxx.deb 如果用户具有sudo权限,那么直接可以运行如下命令: #sudo su root #passwd #更改密码 或者直接运行sudo passwd r ...
- Unity3D逻辑热更新,第二代舒爽解决方案,L#使用简介
热更新 天下武功,无坚不破,唯快不破 热更新就是为了更快的把内容推到用户手中. 之前,我设计了C#Light,经过半年多的持续修补,勉强可用,磕磕绊绊.感谢那些,试过,骂过,用过的朋友,在你们的陪伴下 ...
- Ubuntu下解决adb devices:???????????? no permissions的方法
之前一直都是在windows下进行开发的,但是这次由于一个小模块用的东西只能在linux下运行,所以就发生了这么一系列的问题环境:虚拟机Vmware下的Ubuntu12.10事件:连接android手 ...
- 虚拟化平台cloudstack(4)——几个异常
cloudstack主机添加不成功 CloudStack正常启动,添加区域.提供点和群集都正常,但是添加主机时提示添加不成功. 先添加主机: 然后出现提示: 在网上找了一圈,基本上没什么回复,没办法, ...