SQL:第一章定义变量_第1页
SQL:第一章定义变量_第2页
SQL:第一章定义变量_第3页
SQL:第一章定义变量_第4页
SQL:第一章定义变量_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、定义变量,本章目的,完成本章之后,我们应该能够掌握: 知道基本的 PL/SQL block 及它们的组成部分 描述变量在PL/SQL中的重要性 区分 PL/SQL与非PL/SQL变量 定义 PL/SQL变量 执行一个 PL/SQL 块,PL/SQL 块的结构,DECLARE 可选择 变量,游标, 用户自定义的例外处理 BEGIN 必须 SQL 语句 PL/SQL 语句 EXCEPTION 可选择 程序出错时的处理动作 END; 必须,PL/SQL块的结构,DECLARE v_variable VARCHAR2(5); BEGIN SELECTcolumn_name INTOv_variable

2、 FROMtable_name; EXCEPTION WHEN exception_name THEN . END,块的类型,无名块 存储过程函数,DECLARE BEGIN -statements EXCEPTION END,PROCEDURE name IS BEGIN -statements EXCEPTION END,FUNCTION name RETURN datatype IS BEGIN -statements RETURN value; EXCEPTION END,变量的作用,使用变量: 临时存放数据 对存放的数据进行操作 可重用 方便维护,PL/SQL中变量的处理,在定义部分

3、定义与初始化变量. 在可执行的部分分配一个新的值给变量. 通过参数传递一个值给一个PL/SQL的块. 通过变量来看结果,变量的类型,PL/SQL 变量 标量(Scalar) 复合(Composite) 参考(Reference) 大对象(LOB ) 非-PL/SQL 变量 绑定变量(bind variable,TRUE,变量的类型-例子,25-OCT-99,Atlanta,256120.08,定义一个PL/SQL 变量,语法 例子,定义一个PL/SQL 变量,指导方针 遵循命名规范. 对于被定义为NOT NULL的变量,需要给它 一个初始化的值 用赋值操作符(:=)或DEFAULT预定义字对变

4、量进行初始化 一行定义 一个变量,命名规则,两个变量可以有同样的名称, 如果加入它们在不同的块的话. 变量名称(标示符) 不能与在块里面用到的表的列的名称一样,DECLARE empnoNUMBER(4); BEGIN SELECTempno INTOempno FROMemp WHERE ename = SMITH; END,给变量赋值,v_ename := Maduro,v_hiredate := 31-DEC-98,语法 例子,identifier := expr,变量初始化与关键字,使用 := 赋值操作符 DEFAULT NOT NULL,标量(Scalar) 数据类型,只有一个单一的

5、值 没有任何内部的组成,25-OCT-99,Atlanta,Four score and seven years ago our fathers brought forth upon this continent, a new nation, conceived in LIBERTY, and dedicated to the proposition that all men are created equal.,TRUE,256120.08,基本的标量(Scalar) 数据类型,VARCHAR2 (maximum_length) NUMBER (precision, scale) DATE

6、CHAR (maximum_length) LONG LONG RAW BOOLEAN BINARY_INTEGER PLS_INTEGER,标量(Scalar) 数据类型的定义,v_jobVARCHAR2(9); v_countBINARY_INTEGER := 0; v_total_salNUMBER(9,2) := 0; v_orderdateDATE := SYSDATE + 7; c_tax_rateCONSTANT NUMBER(3,2) := 8.25; v_validBOOLEAN NOT NULL := TRUE,例子,TYPE属性,根据以下定义一个变量: 一个数据库的列的定

7、义 另外一个已经事先定义的变量 在 %TYPE 前面加上: 数据库表与列 事先定义的变量,用%TYPE属性定义一个变量,例子,v_enameemp.ename%TYPE; v_balanceNUMBER(7,2); v_min_balancev_balance%TYPE := 10;,定义一个布尔变量,只有值 TRUE, FALSE, and NULL 能够赋值给布尔变量. 布尔变量能够用逻辑运算符 AND, OR, NOT连接,复合数据类型(Composite,类型 PL/SQL TABLES PL/SQL RECORDS,LOB 数据类型变量,Recipe (CLOB,Photo (BLOB,Movie (BFILE,NCLOB,绑定变量(bind variable,O/S Bind Variable,引用非-PL/SQL变量,在变量前面加上冒号 (:,g_monthly_sal := v_sal / 12,总结,PL/SQL块 由以下部分组成: 定义 (可选

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论