PLSQL中的变量

PLSQL中的变量

ID:40752855

大小:67.50 KB

页数:5页

时间:2019-08-07

PLSQL中的变量_第1页
PLSQL中的变量_第2页
PLSQL中的变量_第3页
PLSQL中的变量_第4页
PLSQL中的变量_第5页
资源描述:

《PLSQL中的变量》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、在PL/SQL中处理变量:l在声明部分声明和初始化变量l在执行部分为变量赋新值,或在表达式中使用变量l在异常处理部分也可以使用变量l通过参数把值传递到PL/SQL块中l通过输出变量或者参数将值传出PL/SQL块PL/Sql中的变量类型:l简单变量l复合(组合)变量简单变量:简单变量不包括任何组件,只能保存一个值简单变量类型:基本类型包括三大类:字符,数字,日期BINARY_INTEGER整形数字NUMBER(precision,scale)数字类型(数值长度、小数位数)CHAR(maximum_length)定长字

2、符类型VARCHAR2(maximum_length)变长字符类型DATE日期类型LONG长字符类型LONGRAW长二进制类型CLOB/BLOB/BFI大对象类型(字符大对象,二进制大对象,操作系统文件大对象)BOOLEAN布尔类型,有效值为TRUE,FALSE,NULL简单变量的声明:v_genderCHAR(1);v_countBINARY_INTEGER:=0;v_total_salNUMBER(9,2):=0;9表示数据长度,2表示保留小数位v_order_dateDATE:=SYSDATE+7;天数+7c

3、_tax_rateCONSTANTNUMBER(3,2):=8.25;v_validBOOLEANNOTNULL:=TRUE;复合变量:³复合变量也叫做组合变量。在复合变量中包含多个内部的组件,每个组件都可以单独存放值。一个复合变量可以存放多个值³与简单变量类型不同,复合变量类型不是数据库中已经存在的数据类型,所以复合变量在声明类型之前,首先要创建使用到的复合类型,然后将变量声明为复合变量³复合类型被创建后,可以被使用多次,定义多个变量复合变量类型:l表类型tablel记录类型record表类型:TABLE:³表类

4、型类似于其他编程语言中的数组类型³由两个组件组成:1.数据类型为BINARY_INTEGER(整形数字)的主键2.数据类型为一个确定的简单类型的列³Table类型没有长度限制,可以动态增长。表类型中的第二部分类似与数组中的值,这个部分必须是一个已经确定的简单类型,不能是其他的复合类型³表类型的结构很像数组。第一部分:是一个按1递增的整形数字,起到数字索引的作用,第二部分:使一种确定的简单类型,用来存放每个索引号对应的具体的数值PL/SQLTABLE结构:声明一个PL/SQLTABLE:--varchar2(4)和e

5、mpl.last_name%typedeclaretypename1_table_typeistableofvarchar2(4)indexbybinary_integer;typename2_table_typeistableofempl.last_name%typeindexbybinary_integer;name1_tablename1_table_type;name2_tablename1_table_type;beginname1_table(1):='大学';name1_table(2):='大本';

6、name2_table(1):=88;name2_table(2):=55;dbms_output.put_line(name1_table(1)

7、

8、''

9、

10、name1_table(2));--大学大本dbms_output.put_line(name1_table(2)

11、

12、''

13、

14、name2_table(2));--大本55end;记录类型RECORDS:³复合类型中的RECORDS类型是由多个组件组成的一种类型。包含一个或几个组件,每个组件称为一个域(FIELD),域的数据类型可以是简单变量类型、另一个RECO

15、RD类型或PL/SQL的TABLE类型。³在使用RECORD变量时把多个域的集合作为一个逻辑单元使用,对记录类型变量赋值或引用,都需要使用“记录变量名.域名”的方式来实现。³主要用于从表中取出查询到的行数据。PL/SQLRECORD结构:³记录类型可以包含一个或多个域,每个域相当于记录类型变量的一个属性.在使用记录变量类型时,实际上是对记录类型变量的属性进行操作.每个域都可以是不同的数据类型,存放不同类型的数据声明PL/SQLRECORD:语法:TYPEname_record_typeISRECORD(field_

16、name1field_type[NOTNULL{:=

17、DEFAULT}expr],field_name2field_type[NOTNULL{:=

18、DEFAULT}expr],...);identifiertype_name;例子:...TYPEemp_record_typeISRECORD(last_nameVARCHAR2(25),first_nameV

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。