网站大量收购独家精品文档,联系QQ:2885784924

Oracle定义PL SQL变量.doc

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Oracle定义PL SQL变量 前言: 使用变量可以保存计算机需要处理的数据,为了给该变量分配适当的内存空间,还需要指定数据类型,有的数据类型还需要指定长度,如字符串。 有些类型可以用于建表(如char),有些则不能(如boolean,rowtype)。 同样是字符串,建表时的限制为4000,在脚本中则为3万多。 简单语法:变量名 数据类型; 完整语法:变量名 [constant] 变量类型 [not null] [default 值 | :=值] 其中“[ ]”表示可以不写,“|”表示任选其一。 下面给出变量定义及解释,数据类型先用建表时所用的数据类型: v1 char: 说明:没有给出长度,所以v1只能保存一个字符。超过了则会出错:数字或值错误 : 字符串缓冲区太小。 v2 varchar2(10); 说明:v2最多只能保存10个字符。如果不写长度,会出错:字符串长度限制在范围(1...32767) v3 number; 说明:v3保存的数字范围非常大,几乎可以认为是没有限制的。 v4 number(5); 说明:v4最多能够保存5位整数。如果有小数,Oracle会自动四舍五入。如果整数部分超过5位,则会报错:数字或值错误 : 数值精度太高。 v5 number(5,2); 说明:v5最多能够保存3位整数,2位小数。如果小数位不止2位,则Oracle会自动四舍五入。整数位超过3位会报错,同上。 v6 date; 说明:可以直接保存sysdate的值;如果是指定日期,则要用to_date来转化。否则报错:文字与格式字符串不匹配。 定义了变量,变量的默认值为空,此时进行计算,结果一定为NULL。所以变量必须初始化。 初始化有三种方式: v7 constant number := 100; 说明:定义v7为常量,定义时就必须给定值。然后在程序中就不能再对v7进行赋值了,否则会报错:表达式 V7 不能用作赋值目标。 v8 number default 10; 说明:定义v8时就给定默认值10。注意,number类型变量的默认值不是0,而是NULL。 v9 number not null := 1000.50; 说明:定义v9变量不能为空,此时必须给出一个不为NULL的值。在运行时发现v9为NULL,则报错:说明为 NOT NULL 的变量必须有初始化赋值。 预测各打印结果,如果代码有错误请先改正: declare v1 char; v2 varchar2(10); v3 number; v4 number(5); v5 number(5,2); v6 date; v7 number default 10; begin v1:=ab; v2:=abcd; v4:=9998.99; v5:=1000.5555555; v6:=to_date(2002-10-2,yyyy-mm-dd); dbms_output.put_line(v1); dbms_output.put_line(v2); dbms_output.put_line(v3+100); dbms_output.put_line(v4); dbms_output.put_line(v5); dbms_output.put_line(v6); dbms_output.put_line(v7+100); end; 只能在脚本中使用的变量类型: 上面的数据类型,同时在建表时也能使用。而下面的数据类型只能在PL/SQL脚本中使用。 即:boolean,type,rowtype,record,替代变量、table类型。 其中: ·一个变量只能保存一个值,叫做“标量变量”。如:char、type。 ·一个变量只能保存多个值,叫做“复合变量”。如:rowtype、record,table。 1、布尔类型 boolean boolean类型主要表达真或假。可以为boolean类型变量赋值true或false。 主要用于PL/SQL脚本的流程控制。 示例: declare v1 boolean; begin v1:=12; dbms_output.put_line(v1); end; 问题:打印的结果是什么,是true、false、1、0? 回答: 都不对。运行时得到错误信息:调用 PUT_LINE 时参数个数或类型错误。 这是因为在脚本中不能直接打印boolean类型的值,所以只能在脚本中使用if语句来判断。 修改示例: declare v1 boolean; begin v1:=12; if(v1)then dbms_output.put_line(真); else dbms_output.put_line(假); end if; end

文档评论(0)

me54545 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档