`
danielhjd
  • 浏览: 246271 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

(笔记)基本复合型数据类型的声明

阅读更多

--(1)使用%type定义变量 --

declare
n_name users.usedname%type;
begin
commit;
end;

 
--(2)定义记录类型变量 --

declare
--定义了名为myrecord的记录类型,该记录类型由整数型的myrecordnumber和日期型的mycurrentdate基本类型变量组成
type myrecord is record(
 myrecordnumber int,
 mycurrentdate date);
  --然后声明一个myrecord类型的变量;
 srecord myrecord;
 begin
 select * into srecord from testtable where recordnumber=68;
 dbms_output.put_line(srecord.mycurrentdate);
 end; 

 
--在PL/SQL程序中,select语句总是和into配合使用,into子句后面就是要《被赋值的变量》

 

--(3) 使用%rowtype定义变量 --

declare
  --声明
 mytable testtable%rowtype;
 begin 
 select * into mytable
 from testtable
 where recordnumber=88;
 dbms_output.put_line(mytable.currentdate);
 end; 

   
 --比较两者定义的不同:
--变量名 数据表.列名%type      //定义普通变量,类型和某列一致
--变量名 数据表%rowtype        //定义复合类型变量,类型与表结构相同

 

--(4) 定义一维表类型变量 (相当于高级语言中的一维数组)

declare
type tabletype1 is table of varchar2(4) index by binary_integer;
type tabletype2 is table of testtable.recordnumber%type index by binary_integer;
table1 tabletype1;
table2 tabletype2;
begin
table1(1):='大学';
table1(2):='大专';
table2(1):=88;
table2(2):=55;
dbms_output.put_line(table1(1)||table2(1));
dbms_output.put_line(table1(2)||table2(2));
end;

 

 

--(5)定义多维表类型变量 (相当于多维数组)

declare
type tabletype1 is table of users%rowtype index by binary_integer;
table1 tabletype1;
begin
select * into table1(20) from users where user_id=29;
dbms_output.put_line(table1(20).usedname||table1(20).real_name);
end;

 

 

--(6)定义多维表类型变量--

declare
type tabletype1 is table of varchar2(20) index by binary_integer;
table1 tabletype1;
begin
table1(1):='北京';
table1(2):='上海';
table1(3):='天津';
dbms_output.put_line('总记录'||to_char(table1.count));
dbms_output.put_line('第一条记录'||table1.first);
dbms_output.put_line('最后一条记录'||table1.last);
dbms_output.put_line('第二条的前一条记录'||table1.prior(2));
dbms_output.put_line('第二条的后一条记录'||table1.next(2));
if (table1.exists(2)) then dbms_output.put_line('第二条记录存在');
else dbms_output.put_line('第二条记录不存在');
end if;
table1.delete(2);
dbms_output.put_line('==================');
dbms_output.put_line('总记录'||to_char(table1.count));
dbms_output.put_line('第一条记录'||table1.first);
dbms_output.put_line('最后一条记录'||table1.last);
dbms_output.put_line('第二条的前一条记录'||table1.prior(2));
dbms_output.put_line('第二条的后一条记录'||table1.next(2));
if (table1.exists(2)) then dbms_output.put_line('第二条记录存在');
else dbms_output.put_line('第二条记录不存在');
end if;
end;

 

分享到:
评论

相关推荐

    C语言数据类型笔记及代码

    了解了这些基本数据类型后,我们可以通过声明变量来使用它们,例如`int age = 20;`。C语言还支持类型转换,如 `(int)` 或 `(float)`,允许在不同数据类型之间进行转换。 在实际编程中,选择合适的数据类型至关重要...

    程序逻辑与C语言:第9章 用户自己建立数据类型.ppt

    结构体是一种复合数据类型,由多个基本数据类型组成。用户可以根据需要,定义自己的结构体类型。例如,定义一个学生的结构体类型: ```c struct Student { int num; char name[20]; char sex; int age; float ...

    Go 学习笔记——雨痕

    Go的基本数据类型包括整型、浮点型、布尔型、字符串、字节类型以及复合类型如数组、切片、字典、通道、指针和结构体。 Go语言的引用类型包括指针、slice切片、map字典和channel通道。它们在内存中的存储位置是不...

    PHP 程序常用笔记

    本文主要涵盖了PHP程序中的几个关键知识点,包括标记风格、数据类型、复合数据类型、特殊数据类型、数据类型转换以及数据类型检测。 首先,PHP支持不同的标记风格,如脚本风格、XML风格、简短风格和ASP风格。简短...

    plsql学习笔记整理.docx

    1. 记录类型(Record Type):是一种把逻辑相关的数据作为一个单元存储起来的类型,必须包括至少一个标量型或 RECORD 数据类型的成员。 使用 %type 1. 定义一个变量,其数据类型与已经定义的某个数据变量的类型...

    Java变量与数据类型、数据运算中易混知识点总结

    基本数据类型包括整型(byte, short, int, long)、浮点型(float, double)、字符型(char)和布尔型(boolean)。引用数据类型主要包括类(class)、接口(interface)和数组,它们都是对象的引用,而不是对象本身...

    Go 学习笔记 第四版

    Go语言数据类型:Go语言拥有丰富的数据类型,包括基本类型(如整型、浮点型、字符型)、复合类型(如数组、结构体、指针、切片、映射、通道)等。 Go语言变量:变量是存储数据的容器,在Go语言中,变量的声明需要...

    数据结构备课笔记.doc

    结构体是C语言中组合多种基本类型数据的工具,允许将不同类型的变量封装在一起,形成复合数据类型。结构体定义了一种新的数据类型,可以包含字符、整数、浮点数等多种类型的成员。例如,定义一个`Student`结构体来...

    python学基础笔记

    主要分为基本数据类型和复合数据类型。基本数据类型包括: - **数字类型**:Python支持整型(int)、浮点型(float)和复数(complex)。整型是无小数部分的数字,浮点型有小数部分,而复数则包含实部和虚部。 - *...

    python入门笔记(推荐)

    Python支持多种数据类型,包括整型(int)、浮点型(float)、字符串(str)和布尔型(bool)。你可以学习如何声明和操作这些变量,以及如何进行基本的算术运算和比较运算。 接下来是列表、元组、字典和集合等复合...

    Java3相关课程系列笔记之三PLSQL学习笔记.doc

    PL/SQL提供了多种数据类型,包括数值型、字符型、日期时间型、布尔型以及复合数据类型等,以满足不同数据存储需求。 2.2 标量类型 标量类型是最基本的数据类型,如数值型(NUMBER)、整型(INTEGER)、字符型...

    Go 学习笔记 第四版 pdf

    根据提供的信息,我们可以总结出这份文档是关于Go语言学习笔记的部分内容,主要涵盖了Go语言的基础概念、语法结构、数据类型以及并发模型等关键知识点。以下是对这些知识点的详细解析: ### Go语言概述 Go(也称作...

    零基础C语言笔记(老九视频课随堂笔记)

    数据类型决定了变量能够存储的数据种类,C语言提供了多种数据类型,如整型、浮点型、字符型等。运算符用于执行操作,分为赋值运算符、算术运算符、关系运算符和逻辑运算符等。条件结构如if和switch语句允许根据条件...

    C语言学习笔记基础完整

    1. 变量与数据类型:C语言支持多种数据类型,如整型(int)、浮点型(float)、字符型(char)等。变量是存储数据的容器,声明变量时需要指定其类型。 2. 常量与枚举:常量是不可改变的值,可以用#define预处理指令或const...

    传智播客javascript韩顺平笔记

    - **复合数据类型**: - 数组:一组有序的数据集合。 - 对象:包含属性和方法的实体。 - **特殊数据类型**: - `null`:表示空值或未定义。 - `undefined`:表示未初始化或不存在的变量。 #### 变量命名规则 ...

    C语言笔记(整理)

    变量是存储数据的容器,C语言提供了多种数据类型,如整型(int)、字符型(char)、浮点型(float和double)等,以适应不同类型的数值存储。运算符包括算术运算符(+, -, *, /, %)、关系运算符(==, !=, <, >, , >=)、逻辑...

    《C Primer Plus》读书笔记

    C Primer Plus首先介绍了C语言的历史和特点,然后逐步引导读者进入C语言的世界,包括变量、数据类型(如整型、浮点型、字符型)、常量、运算符以及表达式。 二、控制流程 在C语言中,控制流程包括条件语句(if、...

    java基本语法笔记

    Java支持多种数据类型,分为简单数据类型和复合数据类型两大类: - **简单数据类型**: - **布尔型** (`boolean`): 占8位,值为 `true` 或 `false`。 - **字符型** (`char`): 占16位,表示Unicode字符。 - 转义...

    go笔记第三版

    - **结构体**: 一种组合多个字段的数据类型,可以包含不同类型的成员。 - **枚举类型**: Go 语言本身没有枚举类型,但可以通过常量和类型别名来模拟枚举。 ### 2. 表达式与控制流 #### 2.1 保留字 - Go 语言有一些...

    IAR_for_AVR_学习笔记

    基本数据类型涵盖整型、浮点型、布尔型和字符型等,复合数据类型包括数组、结构体、联合体和指针等。 根据提供的文件内容,以下是详细的知识点: 1. bool数据类型: bool是C++语言中的布尔数据类型,用于表示逻辑...

Global site tag (gtag.js) - Google Analytics