◎筱米加步枪◎.Blog

Happy coding

PL/SQL笔记之table和record类型

今天,继续学了PL/SQL的语法,总结下table和record类型的知识:

①table类型(table有点 类似于可增长的数组)

    举两个例子:

/*
 *  ①定义一个user_table_type类型,
 *  这个类型中的元素属性类型是和t_user表中username字段一样的.
 */
Type user_table_type Is Table Of t_user.username%Type 
Index By Binary_Integer;

/* 声明一个user_table_type类型的变量user_table */
user_table  user_table_type


/*
 *  ②定义一个user_table_type类型,
 *  这个类型中的元素属性类型是和t_user表中一行记录类型一样的。
 */
Type user_table_type Is Table Of t_user%Type 
Index By Binary_Integer;

②record类型(可根据需要定义所想要的类型,一般是用于保存数据库中取出的行信息,有点类似于C语言中的结构体)

  举一个例子:

/*
 *  定义一个记录类型,是有number和varchar2(25)类型构成
 */
Type user_record_type IS RECORD
(  
    userid number,
    username varchar2(25)
);

/* 定义一个user_record_type类型的变量user_record */
 user_record user_record_type;

PS:table可以看作是多行单列,record可以看作是单行多列,二者合起来就是多行多列,可保存查询出来的记录。