PL-SQL变量

本文概要

  • PL/SQL如何声明变量
  • PL / SQL变量命名规则
  • PL/SQL中初始化变量
  • 初始化变量的实例
  • PL / SQL变量的作用域
  • 局部和全局变量的例子
变量是便于暂时的代码的执行期间程序员存储数据的有意义的名称。它可以帮助你在PL / SQL程序处理数据。它除了给一个存储区域的名称罢了。在PL / SQL每个变量具有定义该变量的存储器的大小和布局的特定的数据类型。
变量应不超过30个字符。信中任选随后多个字母,美元符号,数字,下划线等。
1.它需要使用之前先在一个PL / SQL块的声明部分声明变量。2.默认情况下,变量名是不区分大小写。一个保留的PL / SQL关键字不能被用作变量名。PL / SQL如何声明变量你必须声明部分或一个包作为一个全局变量声明PL / SQL变量。申报后,PL / SQL分配内存变量的值和存储位置由变量名称标识。
语法声明变量:
以下是声明变量的语法:
variable_name [CONSTANT] datatype [NOT NULL] [:= | DEFAULT initial_value]

这里,变量名是在PL / SQL有效标识符和数据类型必须是有效的PL / SQL数据类型。与大小,缩放或精度限制的数据类型被称为约束声明。该宣言的约束比需要申报无约束更少的内存。
PL / SQL变量命名规则在PL / SQL变量必须按照像其他编程语言的一些命名规则。
  • 该变量名不应超过30个字符。
  • 变量的名称必须以ASCII字母开头。在PL / SQL不区分大小写,因此它可以是大写或小写。例如:V_DATA和V_DATA指的是相同的变量。
  • 你应该让你的变量易于阅读和理解,第一个字符后,它可以是任何数字,下划线(_)或美元符号($)。
  • NOT NULL是可变的可选规范。
PL/ SQL初始化变量Evertime声明变量,PL / SQL定义了一个默认值NULL吧。如果要初始化非NULL值的其他值的变量,你可以声明中这样做,通过使用下列方法之一。
  • DEFAULT关键字
  • 赋值运算符
counter binary_integer := 0; greetings varchar2(20) DEFAULT 'Hello srcmini';

你也可以指定NOT NULL约束,以避免NULL值。如果指定了NOT NULL约束,则必须将这个变量的初始值。
你必须有一个良好的编程技巧来初始化变量正确,否则,有时程序会产生意想不到的结果。
初始化变量实例让我们举一个简单的例子来解释得好:
DECLARE a integer := 30; b integer := 40; c integer; f real; BEGIN c := a + b; dbms_output.put_line('Value of c: ' || c); f := 100.0/3.0; dbms_output.put_line('Value of f: ' || f); END;

执行后,这将产生以下结果:
Value of c: 70 Value of f: 33.333333333333333333PL/SQL procedure successfully completed.

PL / SQL变量的作用域PL / SQL允许嵌套块。一个程序块可以包含另一个内部块。如果内部块内声明一个变量,它不是外面的块访问。有两种类型的变量范围:
  • 局部变量:局部变量是内部块变量,并不外块访问。
  • 全局变量:全局变量在最外面的块中声明。
局部和全局变量的例子让我们举个例子来说明在其简单的形式局部和全局变量的用法:
DECLARE -- Global variables num1 number := 95; num2 number := 85; BEGIN dbms_output.put_line('Outer Variable num1: ' || num1); dbms_output.put_line('Outer Variable num2: ' || num2); DECLARE -- Local variables num1 number := 195; num2 number := 185; BEGIN dbms_output.put_line('Inner Variable num1: ' || num1); dbms_output.put_line('Inner Variable num2: ' || num2); END; END; /

【PL-SQL变量】执行后,这将产生以下结果:
Outer Variable num1: 95 Outer Variable num2: 85 Inner Variable num1: 195 Inner Variable num2: 185PL/SQL procedure successfully completed.

    推荐阅读