PL/Sql 编程

PL/Sql结构

[declare]

--声明变量

begin

--执行部分

[exception]

---异常处理部分

end

PL/Sql  基本数据类型

数值类型

      1、 number(p,s) 例如:number(9,2) 表示精度为9 ,小说点后两位的数。ps:既可以表示整形和浮点型。

字符类型:  2、pl/sql 中的varchar2 最大字节是32767字节。数据库中的varchar2(maxlength) 最大占4000多字节,如果超过4000,那么就要赋值给long型。

日期类型: date  占7 个字节。

布尔类型:boolean 包括三种true,false ,null。

PL/Sql 特殊类型

%TYPE

【%TYPE】 关键字声明了一个与指定类名称相同的数据类型,他通常紧跟在列名 的后面。

declare

Var_job  scott.emp.job%TYPE;--Var_job 的数据类型和列名job的数据类型是一样的。比如job是的数据类型是varchar2(20) ,那么Var_job也是varchar2(20).

%record

【%record】 使用该变量可以存储多个列组成的一行数据。在声明变量前应该定义记录类型,然后才可以声明记录类型变量。记录类型变量是y一种结构化的数据类型。

它使用type语法定义。

格式:

type  record_type is  record

      (

        var_member1 data_type [not null][:=default_value],--切记是逗号;

...

var_member2 data_type [not null][:=default_value]

)

%rowType

【%rowtype】 类型结合了%type和record类型的优点,可以根据数据的行结构定义一种特殊的数据类型。用来存储从数据表中检索的到一行数据。

row_var  table_name%rowtype;

PL/Sql 流控制语句

选择语句

if  ...then

格式:

  if <condition_expression> then

      sql_sentence

    end if;

<condition_expression> 为true时执行 sql_sentence语句。

表示逻辑运算时,and or not (且、或、非) ,表示为null时,if   var is  null then ...

if  then else


if  then ...

else if

else

end if;


case <sector>

when <expression_1> then plsql_sentence;

when <expression_2> then plsql_sentence;

...

end case;

<sector> 表示选择器,通常是一个变量。还记得sql语句中的case 。。。 when 。。。 then 。。。 else 。。。 end 吗?

PL/SQL 游标

游标提供了一种从表中检索数据并进行操作的灵活手段,游标主要用在服务器上,处理有客户端发给我服务器端的sql语句,或是批处理、存储过程、触发器中的数据请求。游标的作用就相当于指针。

PL/Sql异常处理

预定义异常

自定义异常

PL/SQL 基础编程的更多相关文章

  1. oracle PL/SQL基础编程

    PL/SQL(Procedural Language/SQL)是oracle中引入的一种过程化编程语言 PLS-00103:出现符号"declare"在需要下列之一时 符号&quo ...

  2. Oracle数据库—— PL/SQL基础编程

    一.涉及内容 1. 掌握PL/SQL程序块的结构,理解并熟悉各种变量的应用. 二.具体操作 (一)使用system用户登录SQL*PLUS,使用SQL语句创建用户:u_你的姓名首字母(例如:u_zs) ...

  3. PL/SQL存储过程编程

    PL/SQL存储过程编程 /**author huangchaobiao *Email:huangchaobiao111@163.com */ PL/SQL存储过程编程(上) 1. Oracle应用编 ...

  4. Oracle数据库之PL/SQL基础

    介绍PL/SQL之前,先介绍一个图像化工具:Oracle SQL Developer 在oracle的开发过程中, 我们难免会使用第三方开发的软件来辅助我们书写SQL, pl/sql是一个不错的sql ...

  5. Oracle实战笔记(第六天)之PL/SQL基础

    一.PL/SQL介绍 1.概念 PL/SQL也是一种程序语言,叫做过程化SQL语言(Procedural Language/SQL).PL/SQL是Oracle数据库对SQL语句的扩展.在普通SQL语 ...

  6. pl/sql基础知识—定义并使用变量

    n  介绍 在编写pl/sql程序是,可以定义变量和常量:在pl/sql程序中包括有: ①标量类型(scalar) ②复合类型(composite) ③参照类型(reference) ④lob(lar ...

  7. 初试PL/SQL并行编程

    -----------------------------Cryking原创------------------------------ -----------------------转载请注明出处, ...

  8. 二十、oracle pl/sql基础

    一.pl/sql developer开发工具pl/sql developer是用于开发pl/sql块的集成开发环境(ide),它是一个独立的产品,而不是oracle的一个附带品. 二.pl/sql介绍 ...

  9. oracle pl/sql 基础

    一.pl/sql developer开发工具pl/sql developer是用于开发pl/sql块的集成开发环境(ide),它是一个独立的产品,而不是oracle的一个附带品. 二.pl/sql介绍 ...

随机推荐

  1. Python Tensorflow下的Word2Vec代码解释

    前言: 作为一个深度学习的重度狂热者,在学习了各项理论后一直想通过项目练手来学习深度学习的框架以及结构用在实战中的知识.心愿是好的,但机会却不好找.最近刚好有个项目,借此机会练手的过程中,我发现其实各 ...

  2. 信号和槽有一个非常精炼的C++实现,作者是Sarah Thompson,该实现只有一个头文件sigslot.h,跨平台且线程安全

    关于信号和槽有一个非常精炼的C++实现,作者是Sarah Thompson,该实现只有一个头文件sigslot.h,跨平台且线程安全. 源码在:http://sigslot.cvs.sourcefor ...

  3. 2016 Multi-University Training Contest 2 总结

    第二次多校,出师未捷身先死 欣君看了一下09题,高呼水题,迅速码好,一A. 我看了11题,发现分奇偶讨论即可,于是按思路写好,一A. 欣君搞鼓出01题的一个公式,于是我照着写,一WA.简直不可思议,发 ...

  4. poj2027简单题

    #include <stdio.h> #include <stdlib.h> int main() { int n,x,y; scanf("%d",& ...

  5. [LeetCode][Python]18: 4Sum

    # -*- coding: utf8 -*-'''__author__ = 'dabay.wang@gmail.com' 18: 4Sumhttps://oj.leetcode.com/problem ...

  6. ceph伦理概念

    Preface: CEPH: THE FUTURE OF STORAGE(未来存储) Ceph was made possible by a global community of passionat ...

  7. 浙大PAT 7-06 题解

    #include <stdio.h> #include <iostream> #include <algorithm> #include <math.h> ...

  8. 面向对象程序设计-C++_课时14对象组合_课时15继承

    对象组合,就是一个类的对象作为另外一个类的成员,涉及类的对象,对象是实体,玩实 继承,涉及类,类是概念,玩虚 public: 所有人都可以接触 private: 数据放private protecte ...

  9. android 屏幕适配问题【转】

      如何将一个应用程序适配在不同的手机上,虽然这不算是一个技术问题,但是对于刚刚做屏幕的开发人员来说,还真不是一件多么简单的事情. 首先:你需要在AndroidManifest.xml文件的<m ...

  10. BootStrap 模态框禁用空白处点击关闭问题

    模态框为信息编辑窗口,涉及好多内容,填了半天,若一不小心点了空白处,那就前功尽弃了..... 所以我们很有必要禁用鼠标点击空白处模态框关闭的功能. $('#myModal').modal({backd ...