ORACLE 变量定义

 1 DECLARE
 2         v_productid        productinfo.productid%TYPE;
 3       v_productname        VARCHAR2(20);
 4       v_productprice      NUMBER(8,2);
 5           v_quantity      NUMBER(10);
 6        v_desperation     CONSTANT v_productname%TYPE:=‘测试‘;
 7
 8        v_spitgr           SIMPLE_INTEGER := 99.9;
 9        v_long             LONG :=‘long类型测试‘;
10        v_date             DATS :=SYSDATE;
11 BEGIN
12     SELECT productid,productname,productprice,quantity
13     INTO v_productid,v_productname,v_productprice,v_quantity
14     FROM productinfo
15     WHERE pro = ‘0240040001‘;
16
17   DBMS_OUTPUT.PUT_LINE(‘v_productid = ‘       || v_productid);
18   DBMS_OUTPUT.PUT_LINE(‘v_productname = ‘     || v_productname
19                              ||    ‘ 长度 = ‘||LENGTH(v_productname));
20   DBMS_OUTPUT.PUT_LINE(‘v_productprice = ‘    || v_productprice);
21   DBMS_OUTPUT.PUT_LINE(‘v_quantity = ‘        || v_quantity);
22   DBMS_OUTPUT.PUT_LINE(‘v_desperation = ‘     || v_desperation);
23   DBMS_OUTPUT.PUT_LINE(‘v_spitgr = ‘          || v_spitgr);
24   DBMS_OUTPUT.PUT_LINE(‘v_long = ‘         || v_long);
25   DBMS_OUTPUT.PUT_LINE(‘v_date = ‘         || v_date);
26 END;

【代码解析】

该语句块中的声明部分采用了右对齐的方式

第2行利用%TYPE方式声明变量,表示变量v_productid的类型同表productinfo中的productid字段数据类型一致

第3行表示数据类型是长度为20的VARCHAR2型

第4 ~ 5行是NUMBER类型的不同使用方式

第6行利用%TYPE引用了v_productname的数据类型,并且声明了一个常量

第8行初始值是99.9,但由于数据类型只能表示整数,所以变量v_spitgr的值应为100

第11 ~ 26行属于执行体部分

第12 ~ 15行表示从产品表查询数据,并存储到变量中

第17 ~ 25行表示输出结果到屏幕,用于验证变量存储数据

时间: 2024-10-27 10:15:24

ORACLE 变量定义的相关文章

Oracle变量定义的三种方式(define,variable,declare)学习笔记

1.define(即host变量) Host变量主要作用是起到一个替代变量的作用,是主机环境可以和oracle进行交互的一个媒介. 通过define定义host变量的时候必须指定变量名和变量的值,如果变量名已经存在于host变量中,则自动覆盖,这个值不可以指定类型,一律按char存储. DEFINE 变量只在当前session环境中有效. (1).语法: define variable_name = value (2).声明和初始化DEFINE变量 //声明define变量的时候必须同时初始化赋

ORACLE变量定义及使用(另,T-SQL EXISTS的PLSQL替代写法)

1. 简单变量 declare v_cnt NUMBER(10,0) := 0; BEGIN SELECT COUNT(1) INTO v_cnt FROM concept.Decoction WHERE DecoctionId = -1; IF v_cnt = 0 THEN insert into concept.Decoction( DecoctionId, Code, Name, MnemonicCode, SpellCode, WBCode, ClinicItemId, IsSpecia

ORACLE基本定义、操作语句

ORACLE基本定义.操作语句 一.           表 1.创建表 CREATE TABLE TAB_NAME ( COL_01  VARCHAR2(10) NOT NULL, COL_02  NUMBER(8,2), COL_03  DATE ); 2.添加主键约束 ALTER TABLE TAB_NAME ADD CONSTRAINT PK_COL_01 PRIMARY KEY(COL_01); 3.添加唯一性约束 ALTER TABLE TAB_NAME ADD CONSTRAINT

《Effective C++》之条款26:尽可能延后变量定义式的出现时间

<Effective C++> 条款26:尽可能延后变量定义式的出现时间 只要你定义了一个变量而其类型带有一个构造函数和析构函数,那么当程序的控制流到达这个变量定义式时,你便得承受构造成本:当这个变量离开作用域时,你便得承受析构成本.即使这个变量最终并未被使用,仍需耗费这些成本,所以你应该尽量避免这种情形. 对于"尽可能延后"的理解: 不只应该延后变量多的定义,直到非得使用该变量的前一刻为止,甚至应该尝试延后这份定义直到能够给它初始实参为止.如果这样,不仅能够避免构造(析构

Oracle 存储过程定义和优点及与函数区别

定义: 存储过程(Stored Procedure )是一组为了完成特定功能的SQL 语句集,经编译后存储在数据库中.用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它.存储过程是数据库中的一个重要对象,任何一个设计良好的数据库应用程序都应该用到存储过程. 存储过程是由流控制和SQL 语句书写的过程,这个过程经编译和优化后存储在数据库服务器中,应用程序使用时只要调用即可.在ORACLE 中,若干个有联系的过程可以组合在一起构成程序包. 优 点: 1.(预编译)存储过程只在创造

PL/SQL——编程——变量定义

1.变量标量类型(scalar)复合类型(composite)参照类型(reference)lob(large object) --定义一个变长字符串v_ename VARCHAR2(10)--定义一个小数,范围-9999.99~9999.99v_sal NUMBER(6,2)--定义一个小数,并给初始值5.4,:=是plsql的赋值符v_sal2 NUMBER(6,2):=5.4--定义一个日期类型v_hiredate date--定义一个布尔量,不能为空,初始值为falsev_valid B

python变量定义

变量定义规则:1.可以由字母.数字.下划线组成2.第一个字符不能为数字3.不能使用系统保留关键字 约定规范:1.变量名有具体含义2.不能使用中文名(实际上Python支持中文变量名)3.不能使用拼音4.使用下划线分隔单词5.使用单词首字母大写(驼峰型)6.常量使用全大写字母标识

MySql中的变量定义

MySql中的变量定义 根据mysql手册,mysql的变量分为两种:系统变量和用户变量.但是在实际使用中,还会遇到诸如局部变量.会话变量等概念.根据个人感觉,mysql变量大体可以分为四种类型: 一.局部变量. 局部变量一般用在sql语句块中,比如存储过程的begin/end.其作用域仅限于该语句块,在该语句块执行完毕后,局部变量就消失了. 局部变量一般用declare来声明,可以使用default来说明默认值. 例如在存储过程中定义局部变量: drop procedure if exists

php-环境、变量定义与输出、变量用法

1.php环境 1.1lawp 1.2wamp l: linux  w: windows //系统 a: apache  a: apache //阿帕奇 m: mysql  m: mysql //数据库 p: php p: php //php 2.变量定义与输出 2.1定义与输出都得带$ 2.2 定义:$name="xxx"; 输出: echo $name; //输出变量 var_dump($name); //输出数组,并打印类型与长度 print_r($name); //输出数组 3