PL/SQL 声明

一、命名规范

  • 命名方法
    命名方法适用
    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; ……    --访问的时候用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值