`
侯上校
  • 浏览: 228502 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

PL/SQL基础 定义并使用变量

阅读更多

·  介绍

   在编写PL/SQL程序时,可以定义变量和常量;在PL/SQL程序中包括有:

         ①标量类型

         ②复合类型

         ③参照类型

         ④lob

` 标量---常用类型

   在编写PL/SQL块时,如果要使用变量,需在定义部分定义变量。

   PL/SQL中定义变量和常量的语法如下:

         ①定义一个变长字符串

            v_ename   varchar2(10);

         ②定义一个小数    范围-9999.99~9999.99

            v_sal  number(6 , 2);

         ③定义一个小数并给一个初始值为5.4:=是pl/sql 的赋值号

            v_sal2  number(6,2):=5.4

         ④定义一个日期类型的数据

            v_hiredate  date;

         ⑤定义一个布尔变量,不能为空,初始值为false

            v_valid   boolean  not null  default  false ;

    使用标量

          在定义好变量后,就可以使用这些变量。这里需要说明的是pl/sql块为变量赋值不同于其它的编程语言,需要在等号

    前加冒号(:=)

          eg:

                 declare
                     t_tax_rate number(3,2):=0.03;
                     --用户名
                      v_ename varchar2(5);

                      --v_ename emp.ename%type;--此字段和表字段大小一样
                      v_sal number(7,2);
                      v_tax_sal number(7,2);
                 --执行
                 begin
                       select ename,sal into v_ename,v_sal from emp where empno=&no;
                       --pl/sql中可以使用+-*/
                       --计算所得税
                       v_tax_sal:=v_sal*t_tax_rate;
                       --输出
                      dbms_output.put_line('姓名:'||v_ename||'  工资:'||v_sal||'  交税:'||v_tax_sal);
                end;

·  复合变量-------介绍

         用于存放多个值的变量。主要包括:

         ①pl/sql记录

         ②pl/sql表

         ③嵌套表

         ④varray

 

         记录:

               相当于高级语言中的结构体/类

                 declare

                    type emp_record_type is record(
                            v_name emp.ename%type,
                            salary emp.sal%type,
                            title emp.job%type);

                sp_record emp_record_type;
                begin
                       select ename , sal , job into sp_record from emp where empno=7788;

                       dbms_output.put_line('员工名:'||sp_record.v_name);
                end;

          表:

                 相当于高级语言里的数组

                declare
                       type sp_table_type is table of emp.ename%type 
                       index by binary_integer;
                       sp_table sp_table_type;
                begin
                       select ename into sp_table(0) from emp where empno=7788;
                       dbms_output.put_line('员工名:'||sp_table(0));
                end;
               --说明:
               --sp_table_type   是pl/sql表类型
               --emp.ename%type  指定了表的元素的类型和长度
               --sp_table  为pl/sql表变量
               --sp_table(0)则表示下标为0的元素

·  参照变量

     参照变量是指用于存放数值指针的变量,通过使用参照变量,可以使得应用程序共享相同对象,从而降低占用的空间。在编写PL/SQL程序时,可以使用游标变量和对象类型变量二种参照变量类型。

·  参照变量   游标变量

         使用游标时,当定义游标时不需要指定相应的selec t语句,但是当使用游标时需要指定select语句,这样一个游标就与一个select语句结合了,实例如下:

         ①请使用pl/sql编写一个块,可以输入部门号,并显示该部门所有员工姓名和他的工资。

         ②在1基础上,如果某个员工的工资低于200元,就增加100元

分享到:
评论

相关推荐

    pl/sql最新中文手册

    1. **PL/SQL基础**:手册可能会从基础开始,介绍PL/SQL的基本结构,包括声明变量、常量、游标、记录类型等。还会讲解如何编写存储过程、函数和触发器。 2. **控制流程语句**:这包括条件判断(IF-THEN-ELSIF-ELSE)...

    PL/SQL 程序设计

    PL/SQL 程序设计 本章主要重点:  PL/SQL概述  PL/SQL块结构  PL/SQL流程  运算符和表达式  游标  异常处理  数据库存储过程和函数  包  触发器

    13oracle的PL/SQL编程-定义并使用变量 PPT

    在PL/SQL块的声明部分,我们可以定义变量并同时初始化它们的值: ```sql DECLARE num_var NUMBER := 123; -- 初始化为123 str_var VARCHAR2(20) := 'Hello'; -- 初始化为'Hello' date_var DATE := SYSDATE; -- ...

    oracle10g_pl/sql

    - **EXCEPTION块**:用于捕获和处理异常,可以定义自定义异常并使用RAISE语句抛出。 4. **PL/SQL与SQL的交互** - **嵌套SQL**:在PL/SQL代码中执行SQL查询,如SELECT INTO语句。 - **游标**:用于处理查询结果集...

    PL/SQL编程基础知识

    ### PL/SQL编程基础知识 #### 一、PL/SQL简介 ...以上内容详细介绍了PL/SQL的基础知识,包括其语法特点、块结构以及变量类型等方面。对于初学者来说,掌握这些基本概念是学习和应用PL/SQL的关键。

    一个对数据库的操作工具PL/SQLpl/sqL工具

    6. **子程序**:PL/SQL支持函数和过程的定义,这些子程序可以在多个地方重复使用,降低了代码的冗余。 7. **包(Packages)**:包是将相关的类型、变量、常量、过程和函数组合在一起的命名实体,便于管理和重用。 ...

    Oracle资料学习PL/SQL必备

    PL/SQL的基础部分是了解和使用Oracle数据库的关键,它包括以下几个主要方面: 1. **基本语法**:PL/SQL由声明部分、执行部分和异常处理部分组成。声明部分用于定义变量、游标、常量等;执行部分包含SQL语句和PL/SQL...

    Oracle PL/SQL实战(待续)

    我们可以使用`DECLARE`语句定义变量,并通过`=`, `:=`符号进行赋值。同时,PL/SQL支持多种数据类型,包括数值类型(NUMBER)、字符类型(VARCHAR2, CHAR)、日期类型(DATE)等,以及复合类型如记录(RECORD)和表...

    PL/SQL基础

    这篇博客将深入探讨PL/SQL的基础知识,帮助你理解并掌握这个强大的数据库编程语言。 首先,我们来看一下PL/SQL的基本结构。PL/SQL程序由一系列的块组成,每个块都有自己的声明部分、执行部分和异常处理部分。声明...

    Oracle PL/SQL程序设计(第5版)(上下册)

    它允许在SQL查询的基础上添加控制流语句、变量定义、错误处理等特性。 - **环境搭建与配置**:本书将介绍如何在不同的操作系统环境下安装并配置Oracle 11g数据库环境,以及如何设置PL/SQL Developer或其他开发工具来...

    oracle 9i pl/sql程序设计笔记

    此匿名块展示了如何使用PL/SQL声明变量、插入数据到表中以及使用`DBMS_OUTPUT`包在屏幕上显示数据。值得注意的是,为了使`DBMS_OUTPUT.PUT_LINE`函数生效,需要确保服务器输出(Server Output)已开启,可通过命令`...

    PL/SQL基础编程,实例自写

    ### PL/SQL基础编程知识点详解 #### 一、PL/SQL概述 PL/SQL,全称为Procedural Language for SQL,是Oracle数据库特有的高级程序设计语言。它结合了SQL的数据处理能力和传统编程语言的控制结构,使开发者能够在...

    ORACLE PL/SQL从入门到精通

    PL/SQL变量的声明和使用是编程的基础,涉及到变量的声明、初始化、数据类型、%type属性等。变量的赋值和使用也是需要掌握的内容。 此外,书中还涉及到了ORACLE数据库的安装、存储过程的编写、序列操作、数据类型...

    PL/SQL 基本知识

    这篇博客主要探讨了PL/SQL的基础知识,包括其语法特性、使用场景以及在数据库管理中的重要性。 首先,PL/SQL是一种过程化语言,它允许用户定义变量、控制流程(如循环、条件语句)、处理异常,并且可以嵌入SQL查询...

    oracle 经典资料及PL/SQL 使用指南 英文版

    这篇“Oracle经典资料及PL/SQL使用指南”的英文版,将帮助学习者深入理解Oracle数据库的基础概念以及PL/SQL的高级用法。 一、Oracle数据库基础 1. 数据库架构:Oracle数据库采用多层架构,包括物理存储层、逻辑...

    PL/SQL下载

    1. **基础语法**:理解PL/SQL的基本数据类型、变量声明、流程控制结构等。 2. **函数和过程**:掌握如何定义和调用自定义函数和过程。 3. **游标**:了解如何使用游标处理结果集。 4. **异常处理**:学习如何编写...

    Oracle Database 12c PL/SQL开发指南 实例源代码

    1. **PL/SQL基础**:PL/SQL的基础语法,如变量声明、数据类型、流程控制语句(如IF-THEN-ELSIF,FOR循环,WHILE循环)、异常处理(BEGIN-EXCEPTION-END结构)等。 2. **函数与过程**:如何定义和调用用户自定义的...

    PL/SQL doc 文件

    本文将讲述 PL/SQL 基础语法、结构和组件、以及如何设计并执行一个 PL/SQL 程序。 PL/SQL 的优点包括: * 高性能的基于事务处理的语言,能运行在任何 ORACLE 环境中,支持所有数据处理命令。 * 支持所有 SQL 数据...

    Oracle PL/SQL实例编程(PL/SQL经典书籍)

    声明部分用于定义变量、常量和游标;执行部分包含了SQL语句和流程控制结构,如循环、条件判断等;异常处理部分则用于捕获和处理运行时错误。 2. **变量和数据类型**:PL/SQL支持多种数据类型,包括数值型(NUMBER、...

    Oracle PL/SQL专家指南-高级PL/SQL解决方案的设计与开发

    1. **PL/SQL基础**:涵盖PL/SQL的基本语法,包括变量声明、常量定义、条件语句(IF-THEN-ELSIF-ELSE)、循环结构(WHILE, FOR)、异常处理(BEGIN-EXCEPTION-END)以及子程序(PROCEDURE和FUNCTION)的创建与调用。...

Global site tag (gtag.js) - Google Analytics