Ethon

为什么要有方法,因为懒惰是一种美德。

   :: 首页  :: 新随笔  ::  ::  :: 管理
 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行表示输出结果到屏幕,用于验证变量存储数据

 

posted on 2015-05-03 21:25  Ethon  阅读(259)  评论(0编辑  收藏  举报