zoukankan      html  css  js  c++  java
  • 复合类型 :包含多个元素、存储多个值

    --复合类型 :包含多个元素、存储多个值
    --01 记录类型

    set serveroutput on --打开输出功能
    declare
    type readerinfo_rc is record --声明记录类型的具体结构
    (
    v_readerid number(4),
    v_readername varchar2(10),
    v_unit varchar2(50)
    );

    v_readerinfo_rc readerinfo_rc;---声明一个变量v_readerinfo_rc,该变量的数据类型为readerinfo_rc,也就是记录类型
    begin
    select readerid,readername,unit
    into v_readerinfo_rc
    from readerinfo
    where readerid=9701;

    dbms_output.put_line('v_readerid= ' || v_readerinfo_rc.v_readerid); --如何提取变量中的数据,
    dbms_output.put_line('v_readername= ' || v_readerinfo_rc.v_readername);--提取数据使用“变量名称.成员名称”
    dbms_output.put_line('v_unit= ' || v_readerinfo_rc.v_unit);
    end;
    /
    --利用%rowtype 指明数据类型,存储数据
    declare
    v_readerinfo_rc readerinfo%ROWTYPE;--声明该变量的数据类型为readerinfo表的行类型
    begin
    select *--readerid,readername,unit
    into v_readerinfo_rc
    from readerinfo
    where readerid=9701;

    dbms_output.put_line('v_readerid = ' || v_readerinfo_rc.readerid);
    dbms_output.put_line('v_readername= ' || v_readerinfo_rc.readername);
    dbms_output.put_line('v_unit= ' || v_readerinfo_rc.unit);
    end;

    ---02 索引表类型 :与数组相似,成为关联数组
    declare
    type binary_inx_fst is table of readerinfo%rowtype
    index by binary_integer;--创建binary_inx_fst的索引表,以binary_integer类型为索引类型;

    v_inx_bnary binary_inx_fst;---声明索引表类型的变量

    begin
    select * into v_inx_bnary(1)
    from readerinfo
    where readerid=9701;

    dbms_output.put_line('v_inx_bnary 的值 =' || v_inx_bnary(1).readerid || '---'
    || v_inx_bnary(1).readername || '---'
    || v_inx_bnary(1).unit);
    end;

    --03 VARRAY变长数组类型:数组的下标会从1开始
    declare
    type varrary is varray(50) of varchar2(20);

    v_varr varrary:=varrary('1','2','3');
    begin
    v_varr(1):='我是';
    v_varr(3):='数组';
    v_varr(2):='变长';

    dbms_output.put_line('v_varr(1) =' || v_varr(1));
    dbms_output.put_line('v_varr(2) =' || v_varr(2));
    dbms_output.put_line('v_varr(3) =' || v_varr(3));
    end;











  • 相关阅读:
    VS Code 隐藏 .meta 文件
    CentOS7安装之后无法上网
    windows通过ssh方式访问CentOS7
    解决libc.so.6: version `GLIBC_2.18' not found问题
    Node.js ArrayBuffer 转为字符串
    centos7 tar, zip 解压文件命令(tar, zip)
    CentOS7安装 clang
    CentOS7开启 ssh 22端口
    MongoDB手册
    C++回调函数
  • 原文地址:https://www.cnblogs.com/empty01/p/5581902.html
Copyright © 2011-2022 走看看