`
wlxt_8436
  • 浏览: 16910 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

PL/SQL脚本语言赋值语句语法 table和record符合类型用法,选择语句if else 用法 匿名块

阅读更多
(一)、赋值语句语法
    PL/SQL中的赋值使用 :=
    “=”被用作比较操作符
    赋值语句中有一些规则需要遵守:
    字符类型必须使用单引号
    不可以使用group by
    可以使用数学操作符或字符串连接操作符

(二)、PL/SQL脚本语言的变量声明
    (a)、变量必须在declare语句块中声明
         变量声明的语法规则
            Identifier [constant] datatype [not null] [:= | default expr];

         在变量声明时需要遵守一些基本的规则或者规范:
         变量名不能够使用保留字,如from 、   select等
         第一个字符必须是字母(v_)
         变量名最多包含30个字符
         不要与数据库的表或者列同名
         每一行只能声明一个变量


(b)、变量类型

number:数字类型
char:定长字符串
varchar2:变长字符串
date:日期
boolean:布尔类型,可以取值为true、false和null值

     注:如果声明变量的类型想和某一表字段或另一变量一样,且可以动态的跟踪字段类型 的变化,就使用字段或变量的%type属性

(c)、注意事项
      在PL/SQL中,select语句有且只能返回一条记录,否则程序就会出错
      select语句中加into子句,将查询到得数据放入变量中
      PL/SQL中的DML语句
      直接使用
      DML语句起作用或者回退的话,需要显式的调用commit或者rollback
      sql%rowcount属性来记录最后一条SQL语句影响了多少条记录

      使用execute immediate 语句
      必须将DDL语句用单引号引起来

(三)、匿名块:
    PL/SQL的匿名块由四个部分组成
       declare – 可选 声明各种变量或游标的地方。
       begin – 必要 开始执行语句。
      --单行注释语句用两个连在一起的‘-’表示。
      /*多行注释语句,
          可以换行*/
       exception – 可选 出错后的处理。
       end; – 必要(请注意end后面的分号)结束。

(三)、table  record 符合类型
(a)、table 类似数组

    able变量的声明包含两部分,第一部分声明一个包含着具体类型的table类型,然后再用这个具体的类型去声明一个变量
       type type_name is table of data_type index by binary_integer;
       identifier type_name;
(b)、record 类似结构体


record变量的声明语法规则
type type_name is record
(field_name1 data_type [not null {:= | default } expr],
field_name2 data_type [not null {:= | default } expr],
…);
identifier type_name;
如果声明变量的类型想和某一表结构一样,且可以动态的跟踪表
结构的变化,就使用%rowtype属性

被%rowtype 给替换了
(c)、示例
declare
  --record  table 变量复合类型
  type emp_record is record(
       ename emp.ename%type,
       job emp.job%type,
       sal emp.sal%type
  );
  emp_info emp_record;
  type str_tab is table of varchar2(10) index by binary_integer;
  v_str str_tab;
begin
  select e.ename, e.job, e.sal into emp_info.ename, emp_info.job, emp_info.sal from emp e where e.empno=7369;
  dbms_output.put_line(emp_info.ename);
  v_str(0) := 'afdfa';
  v_str(1) := 'afewea';
  v_str(3) := 'fej';
  dbms_output.put_line(v_str(3)||'     '||v_str(0));
end ;


(四)、if else 选择语句
declare
  v_num1 number(8,4);
  v_num2 number(8,4);
  v_num3 number(8,4);
  v_sum number(8);
begin
  v_num1 := floor(dbms_random.value * 6) + 1;
  v_num2 := floor(dbms_random.value * 6) + 1;
  v_num3 := floor(dbms_random.value * 6) + 1;
  v_sum := v_num1 + v_num2 + v_num3;
  if v_sum > 12 then -- if  then 之间可以写条件  可以出现 and  or  ()
    dbms_output.put_line('手气不错');
   elsif v_sum > 8 then
    dbms_output.put_line('手气一般');
   else
     dbms_output.put_line('手气不好');
  end if;
end;

分享到:
评论

相关推荐

    Oracle PL/SQL实战(待续)

    同时,PL/SQL支持多种数据类型,包括数值类型(NUMBER)、字符类型(VARCHAR2, CHAR)、日期类型(DATE)等,以及复合类型如记录(RECORD)和表类型(TABLE)。 此外,PL/SQL的包(PACKAGE)概念是将相关的过程和...

    pl/sql最新中文手册

    手册会介绍如何在PL/SQL块中使用DML语句,并处理事务管理。 5. **游标**:游标是PL/SQL中处理单行结果集的关键工具。手册将说明如何声明、打开、读取和关闭游标,以及如何在循环中使用它们。 6. **复合类型**:PL/...

    oracle10g_pl/sql

    - **块结构**:PL/SQL代码由声明、执行和异常处理三部分组成,包括BEGIN...END块、DECLARE...BEGIN...END块以及匿名块。 - **变量和常量**:PL/SQL支持各种数据类型,如NUMBER、VARCHAR2、DATE等,以及声明变量和...

    PL/SQL语法帮助

    本压缩包"PL/SQL语法帮助"是专为初学者设计的指南,包含Sqlhelp.hlp和Plshelp.hlp两个帮助文件,旨在帮助新手快速掌握PL/SQL的基本概念和用法。 首先,让我们深入了解一下PL/SQL的主要组成部分: 1. **声明部分**...

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

    1. **编程能力**:PL/SQL允许编写包含控制结构(如循环、条件语句)和异常处理的程序块,这些块可以存储在数据库中并按需调用,提高了数据库应用的灵活性和复杂性。 2. **数据处理**:通过PL/SQL,用户可以直接对...

    ORACLE PL/SQL从入门到精通

    分支条件语句在PL/SQL中用来根据不同的条件执行不同的代码分支,主要包括CASE表达式和if-then、if-then-else等结构。 PL/SQL变量的声明和使用是编程的基础,涉及到变量的声明、初始化、数据类型、%type属性等。变量...

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

    ### Oracle 9i PL/SQL程序设计笔记精要 ...掌握PL/SQL的不同块类型及其使用方法对于开发高效、可靠的数据库应用程序至关重要。此外,熟悉存储过程和触发器的创建与使用,将有助于提升应用程序的性能和数据安全性。

    基本SQL语句及PL/SQL语句

    标题中的“基本SQL语句及PL/SQL语句”涵盖了关系数据库管理中两个重要的概念:SQL(Structured Query Language)和PL/SQL(Procedural Language/SQL)。SQL是用于管理和处理关系数据库的标准语言,而PL/SQL是Oracle...

    PL/SQL doc 文件

    PL/SQL 是 ORACLE 对标准数据库语言的扩展,它被整合到 ORACLE 服务器和其他工具中,近几年中更多的开发人员和 DBA 开始使用 PL/SQL。本文将讲述 PL/SQL 基础语法、结构和组件、以及如何设计并执行一个 PL/SQL 程序...

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

    Oracle PL/SQL是一种强大的编程语言,它将数据库管理和应用程序逻辑紧密结合起来,是Oracle数据库系统中的核心组件之一。这本书“Oracle PL/SQL实例编程”显然旨在深入讲解如何利用PL/SQL进行实际开发工作,通过实例...

    oracle pl/sql从入门到精通 配套源代码

    Oracle PL/SQL是一种强大的编程语言,它结合了SQL(结构化查询语言)的数据库操作功能与PL/SQL的程序设计特性,广泛应用于Oracle数据库的开发和管理。这本书"Oracle PL/SQL从入门到精通"的配套源代码,显然是为了...

    PL/SQL免安装版

    1. **结构化编程**:PL/SQL支持流程控制语句,如IF-THEN-ELSE、CASE、WHILE和FOR循环,使得开发者能够编写复杂的逻辑。 2. **异常处理**:通过BEGIN...EXCEPTION块,PL/SQL提供了异常处理机制,能够捕获和处理运行...

    PL/SQL编程基础知识

    PL/SQL(Procedural Language for SQL)是一种过程化语言,它结合了SQL的数据操纵功能和过程化语言的控制结构,使用户能够灵活地控制数据操作流程。作为Oracle数据库的核心组成部分之一,PL/SQL在数据库应用程序开发...

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

    - **基本语法与结构**:包括数据类型、变量声明、流程控制语句(如IF、CASE、LOOP、WHILE)、异常处理等。 #### 二、PL/SQL程序结构 - **块结构**:PL/SQL程序通常被组织成块,每个块由声明部分、执行部分和异常...

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

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

    Oracle PL/SQL 实例精解(第4版涵盖Oracle 11g)+源码脚本

    1. **基础语法**:PL/SQL的基础包括声明变量、常量、游标、记录类型以及控制流程语句(如IF-THEN-ELSIF,WHILE,FOR循环)。书中会详细介绍如何编写简单的PL/SQL块,包括声明部分、执行部分和异常处理部分。 2. **...

    PL/SQL 基本知识

    首先,PL/SQL是一种过程化语言,它允许用户定义变量、控制流程(如循环、条件语句)、处理异常,并且可以嵌入SQL查询,进行数据的增删改查操作。通过使用PL/SQL,数据库管理员和开发者可以更高效地管理和维护数据库...

    PL/Sql相关语法

    PL/SQL块有两种形式:命名块和匿名块。命名块通常指的是存储在数据库中的函数、过程、包或触发器,它们有固定的名称,可以被多次调用。匿名块则不存储在数据库中,常用于临时的、一次性执行的任务,可以出现在服务器...

    pl/sql学习笔记

    PL/SQL(Procedural Language/Structured Query Language)是Oracle数据库中的过程式编程语言,它结合了SQL查询语句和传统的过程式编程元素,使得在数据库管理中进行复杂逻辑处理成为可能。以下是对PL/SQL的学习笔记...

    Oracle PL/SQL语言初级教程

    总之,Oracle PL/SQL语言初级教程将引导初学者逐步掌握PL/SQL的基础知识,包括语法、数据类型、函数、表和视图的管理、完整性约束、过程和函数、操作控制以及异常处理。通过学习,开发者可以编写出高效、稳定的...

Global site tag (gtag.js) - Google Analytics