一、命名规范
- 命名方法
命名方法 适用 UserPrivilege 适合英文比较好,并且喜欢抑扬顿挫和有艺术美感的人 userprivilege 适合那些英文好,且比较严谨的人 tbl_user_prifilege 适合那些做开发的人(本人常用的命名规范) yhqx 热爱中文的人 - 不使用关键字
可以参考如下查询结果
SELECT * FROM V$RESERVED_WORDS WHERE RESERVED='Y';
- 长度
1~30个字符
二、定义常量
- 语法:常量名 constant 数据类型标识符 [not null] := 值
- 例子:
i_count constant Int not null:=200 --定义常量i_count,值为200;
三、定义基本数据类型变量
- 语法:变量名 类型标识符 [not null] := 值
- 例子:
sex Boolean not null :=0; --定义变量sex 值为0;
四、使用%TYPE定义变量
这个型式是为了让变量的数据类型与表中的数据类型一致的,定义好以后,表中的数据类型改变,这个变量的数据类型也同时改变;
- 语法:变量名 用户名.表名.字段名%TYPE;
- 例子:
sex SCOTT.Tdetails.SEX%TYPE; --sex变量就与scott用户下的Tdetails表中的sex字段的类型一致;
五、记录类型变量
记录类型是把逻辑相关的数据作为一个单元存储起来,它必须包括至少一个标量型或RECORD 数据类型的成员,称作PL/SQL RECORD 的域(FIELD),其作用是存放互不相同但逻辑相关的信息。
- 语法:
TYPE 变量名 IS RECORD(
变量名1 基本数据类型,
变量名2 基本数据类型,……); - 例子:
TYPE tRecords IS RECORD( Name varchar2, Sex Boolean); ttt tRecords; --使用这个变量的的方法 Select name,sex into ttt from classuser; --这样就把classuser表里的数据放到变量ttt中了.
六、使用%ROWTYPE定义变量
使定义的变量的子变量的类型与表中对应的字段的数据类型一致。- 语法:变量名 用户名.表名%TYPE;
- 例子:
DECLARE to_records tdetails%ROWTYPE; BEGIN SELECT * INTO to_records FROM tdetails where type='pay'; DBMS_OUTPUT.PUT_LINE(to_records.object||' '||toRecords.money||' '||toRecords.payDate); END;
七、定义一维表类型数据
相当于一维数组
- 语法:TYPE 表类型 IS TABLE OF 类型 INDEX BY BINARY_INTEGER;
- 例子:
TYPE score IS TABLE OF INT(3) INDEX BY BINARY_INTEGER; --定义了一个整数数组容量为3; score(1)=1;score(2)=2; …… --访问的时候用