前言: 使用变量可以保存计算机需要处理的数据,为了给该变量分配适当的内存空间,还需要指定数据类型,有的数据类型还需要指定长度,如字符串
有些类型可以用于建表(如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进行赋 值了,否则会报错:表达 式 &