定义部分主要定义变量和常量,语法如下:
DECLARE
virableName [CONSTANT] dataType [NOT NULL][:=|default exp or value];
在给变量或者常量命名时应该遵循以下原则:
1、变量名只能字母开头,其它位可以包含_、$、#和数字
2、长度1-30
3、不区分大小写
4、不能是系统关键字
CONSTANT关键字表示定义常量,常量定义时必须给出初始值,而且值不能再更改。
dataType处是数据类型,要注意此处的数据类型是PL/SQL数据类型,并非定义表使用的SQL数据类型。
NOT NULL 表示变量或者常量不允许为NULL,而且在定义时就必须提供非NULL初始值。
以下代码代码定义了变量和常量:
DECLARE
credit_limit CONSTANT NUMBER :=5000;--常量
invalid BOOLEAN := FALSE;--布尔类型变量
acct_id INTEGER(4) NOT NULL default 9999;--必须附初值的变量
pi CONSTANT REAL := 3.14159;--浮点数常量
postal_code VARCHAR2(20);--与VARCHAR2(20 BYTE)同义
last_name VARCHAR2(20 CHAR);--变量
my_ename emp.ename%TYPE;--与emp表的ename列数据类型相同
PL/SQL数据类型分为四种,标量类型、复合类型、参照类型和LOB类型。
一、标量类型
标量类型的含义是存放单个值。标量类型中又分为整形、数字、字符、日期和布尔等类型。
1、BINARY_INTEGER
范围是从-231--231的整数,如果将浮点数赋值给该类型,浮点数将四舍五入成整数再赋值给该类型。另外该类型还有下列几个子类型:
NATURAL 0-231范围的整数
POSITIVE 1-231范围的整数
NATURALN 不允许NULL值,其它同NATURAL
POSITIVEN 不允许NULL值,其它同POSITIVE
SIGNTYPE 符号类型,只允许三个值-1 0 1三个值
注意:BINARY_INTEGER及其子类型是PL/SQL数据类型,而非SQL数据类型,也就是说,在创建表时不能使用。
联系客服