类似数组的类型:
TYPE TAB_TYPE_MCHNO IS TABLE OF t_r_terminal.rt_merchno%type;
tMchNo TAB_TYPE_MCHNO;
)集合赋值:select t.lmerno bulk collect into tMchNo from t_r_terminal.rt_merchno t;
)单一赋值:(首先需要全局定义类型)
inPara TAB_TYPE_MCHNO := TAB_TYPE_MCHNO(); //初始化
inPara.extend(); //扩展一条记录空间
inPara(iIdx) := substr(tmpPara, , iPos- ); //进行赋值
新建一个类型:(类似C中新建一个结构体)
create or replace type
 nac_user.type_fix_bind_route as object
(
  LT_TERMNO          VARCHAR2(16),
  LT_MERCHNO         VARCHAR2(16),
  RI_INTERFACE       NUMBER(4),  
  FBR_MERCHNO        VARCHAR2(16),
  FBR_TERMNO         VARCHAR2(16),
  FBR_START          DATE,
  FBR_END            DATE,
  FBR_STATUS         CHAR(1),
  SSID               VARCHAR2(16),
  OPRUSER            VARCHAR2(20),
  COVER_AMOUNT       NUMBER,
  AIM_AMOUNT         NUMBER,
  CURR_AMOUNT        NUMBER
);
 
 
新建一个类型集合:(类似C中新建一个结构体数组)
create or replace type nac_user.tab_fix_bind_route is table of nac_user.type_fix_bind_route;

 
构造函数:
tTotal       tab_fix_bind_route := tab_fix_bind_route();
 
初始化:
tTotal.extend;  //如果是一对一"="赋值需要先扩展空间
tTotal(1):=tab_fix_bind_route (NULL,NULL,NULL,NULL,NULL,NULL,NULL...);
 
进行赋值:(批量赋值不需要扩展)
SELECT type_fix_bind_route(lt_termno,
                                 lt_merchno,
                                 ri_interface,
                                 fbr_merchno,
                                 fbr_termno,
                                 fbr_start,
                                 fbr_end,
                                 fbr_status,
                                 ssid,
                                 opruser,
                                 cover_amount,
                                 aim_amount,
                                 curr_amount) BULK COLLECT
        INTO tTotal
        FROM (select *
                from........

判断集合是否空:
if tTotal.Count > 0 then
......
错误案例:create or replace type nac_user.tab_fix_bind_route is table of nac_user."type_fix_bind_route;"
删除一个类型:(界面无法删除的)这个地方的引号不能有
drop type nac_user."type_fix_bind_route";
drop type nac_user."tab_fix_bind_route";
数据集合强制转换为TABLE——集合排序
select type_fix_bind_route(lt_termno,
lt_merchno,
ri_interface,
fbr_merchno,
fbr_termno,
fbr_start,
fbr_end,
fbr_status,
ssid,
opruser,
cover_amount,
aim_amount,
curr_amount) BULK COLLECT
into tPartAg
from TABLE(tPart) tp
order by (tp.CURR_AMOUNT + lAmt) desc;
 

新建体(1):新建type的更多相关文章

  1. 右击菜单一键优化(增加新建office2003、新建reg和bat,删除新建公文包、新建wps、新建rar)

    右击菜单一键优化(增加新建office2003.新建reg和bat,删除新建公文包.新建wps.新建rar) Windows Registry Editor Version 5.00 [HKEY_CL ...

  2. 菜鸟疑问之新建网站与新建web应用程序区别

    学习asp.net一定少不了这困惑:新建网站与新建web应用程序有什么区别? 新建web应用程序 新建网站 呵呵,其实从名字看一个是webApplication,一个是webSite.名字不同罢了? ...

  3. win8.1右键新建菜单添加新建php文件

    最近在学习php没使用IDE,一直使用编辑器,但每次新建文件都要手动该扩展名比较麻烦.于是想着能不能在右键新建菜单直接新建php文件.于是开始百度... 步骤一:win+R打开运行(管理员身份运行) ...

  4. .net操作IIS,新建网站,新建应用程序池,设置应用程序池版本,设置网站和应用程序池的关联

    ServerManager类用来操作IIS,提供了很多操作IIS的API.使用ServerManager必须引用Microsoft.Web.Administration.dll,具体路径为:%wind ...

  5. 定义结构体和table type

    1: 在se11 中创建结构体 2: 定义一个内表, row type 使用structure类型,将会具有structure的字段. 3:在代码中 使用 结构体和table  type *& ...

  6. 新建网站与新建Asp.Net Web 应用程序的区别

    .net网站和应用程序区别,网站是动态执行的不用编译,他只依赖于自己的文档本身,甚至你用aspx里直接写jsp代码都可以,其实网站可以说只是在.net平台中打开的文档,相当于最初的记事本编码,他并不需 ...

  7. 给Linux添加新用户,新建用户,新建帐号

    给Linux添加新用户,新建用户,新建帐号 添加用户组 sudo groupadd groupname 添加用户 sudo useradd username -m -s /sbin/nologin - ...

  8. 新建体(3):dbms_job下新建一个job定期自动执行存储过程

    http://blog.csdn.net/thinkscape/article/details/7411012http://java-admin.iteye.com/blog/231159sql窗口执 ...

  9. 新建体(2):create or replace object创建存储包、存储过程、函数

    http://heisetoufa.iteye.com/blog/366957/ 创建一个package(包) 声明: create or replace package mpay_route is ...

随机推荐

  1. codeforces569B

    Inventory CodeForces - 569B Companies always have a lot of equipment, furniture and other things. Al ...

  2. H.264编码原理以及I帧B帧P帧

    前言 ----------------------- H264是新一代的编码标准,以高压缩高质量和支持多种网络的流媒体传输著称,在编码方面,我理解的他的理论依据是:参照一段时间内图像的统计结果表明,在 ...

  3. Spring 使用介绍(七)—— Spring事务

    一.数据库事务概述 1.基本介绍 事务必需满足ACID(原子性.一致性.隔离性和持久性)特性,缺一不可: 原子性(Atomicity):即事务是不可分割的最小工作单元,事务内的操作要么全做,要么全不做 ...

  4. IntelliJ IDEA 取消【import .;】星号导包

    Setting -- Editor -- Code Style -- Java -- Imports 在 在 具体数值自行填写,够大即可,截图如下:

  5. Let's Encrypt免费泛域名证书申请

    一. 下载acme.sh,以下四条命令任选一条即可 curl https://get.acme.sh | shwget -O - https://get.acme.sh | sh curl https ...

  6. UNIX口令破解机

    在编写我们的UNIX口令破解机时,我们需要使用UNIX 计算口令hash 的crypt()算法.Python 标准库中已自带有crypt 库.要计算一个加密的UNIX 口令hash,只需调用函数cry ...

  7. 第四十一天 socker server和 event

    今日内容 1.基于TCP的socketserver 2.基于UDP的socketserver 3.event 一.TCP的socketserver #服务器 import socketserver f ...

  8. 基准对象object中的基础类型----列表 (四)

    object有如下子类: CLASSES object basestring str unicode buffer bytearray classmethod complex dict enumera ...

  9. 为什么开启子进程 一定要放在 if __name__ == '__main__' 下面

  10. MT【288】必要性探路

    已知$f(x)=e^x-\dfrac{1}{2}ax^2-b$(1)当$a=1,b=1$时,求$f(x)$在$[-1,1]$上的值域.(2)若对于任意实数$x$,$f(x)\ge0$恒成立,求$a+b ...