欢迎来到天天文库
浏览记录
ID:43737937
大小:234.50 KB
页数:29页
时间:2019-10-13
《第14次课_PL_Sql开发》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第八章PL/Sql开发本章要点PL/SQL基本概念PL/SQL的变量PL/SQL的基本语法Oracle各种程序单元使用游标取出多条数据异常处理PL/SQL概述什么是PL/SQLPL/SQL是Oracle数据库对SQL语句的扩展,增加了编程语言的特点数据操作和查询语句被包含在PL/SQL代码的过程性单元中,经过逻辑判断、循环等操作完成复杂的功能或者计算PL/SQL的优点使一组语句功能形成模块化程序开发使用过程性语言控制程序结构可以对程序中的错误进行处理具有较好的可移植性集成在数据库中有助于提高程序性能PL/SQL提高了性
2、能DatabaseDatabaseSQLSQLSQLSQLSQLIF...THENSQLELSESQLENDIF;SQL应用程序应用程序PL/SQL块的基本结构DECLARE–可选部分变量、常量、游标、用户定义异常声明BEGIN–必要部分SQL语句PL/SQL语句EXCEPTION–可选部分程序出现异常时,捕捉异常并处理异常END;–必要部分PL/SQL块例子DECLAREv_dept_idemployees.department_id%TYPE;BEGINSELECTdepartment_idINTOv_dept_
3、idFROMemployeesWHEREemployee_id=100;DBMS_OUTPUT.PUT_LINE('v_dept_id:'
4、
5、v_dept_id);DELETEdepartmentsWHEREdepartment_id=v_dept_id;COMMIT;EXCEPTIONWHENOTHERSTHENROLLBACK;INSERTINTOexception_table(message)VALUES('Someerroroccurredinthedatabase.');COMMIT;END;////
6、//SETSERVEROUTPUTONPL/SQL环境PL/SQLBlockPL/SQL引擎oracle数据库PL/SQLBlockProceduralStatementExecutornon-SQLSQLSQLStatementExecutor在PL/SQL中处理变量在声明部分声明和初始化变量在执行部分为变量赋新值,在表达式中使用变量通过参数把值传递到PL/SQL块中通过输出变量或者参数将值传出PL/SQL块声明变量和常量:语法定义的标示符名称应遵循命名规则在声明常量和变量的时候可以为其设置初始化值,也可以设置NOT
7、NULL可以使用赋值运算符(:=)或者DEFAULT保留字来初始化标识符在声明时,每行只能声明一个标识符给变量赋值有两种方法:使用赋值语句:=使用SELECTINTO语句identifier[CONSTANT]datatype[NOTNULL][:=
8、DEFAULTexpr];变量和常量2-2DECLAREicodeVARCHAR2(6);p_catgVARCHAR2(20);p_rateNUMBER;c_rateCONSTANTNUMBER:=0.10;BEGIN...icode:='i205';SELECTp_ca
9、tegory,itemrate*c_rateINTOp_catg,p_rateFROMitemfileWHEREitemcode=icode;...END;PL/Sql中的变量类型简单变量复合(组合)变量外部变量简单变量简单变量不包括任何组件,只能保存一个值基本类型:BINARY_INTEGERNUMBER[(precision,scale)]CHAR[(maximum_length)]VARCHAR2(maximum_length)DATELONGLONGRAWCLOB/BLOB/BFILEBOOLEAN简单变量的声
10、明v_genderCHAR(1);v_countBINARY_INTEGER:=0;v_total_salNUMBER(9,2):=0;v_order_dateDATE:=SYSDATE+7;c_tax_rateCONSTANTNUMBER(3,2):=8.25;v_validBOOLEANNOTNULL:=TRUE;复合数据类型复合数据类型:PL/SQLTABLESPL/SQLRECORDS包含多个内部组件,用于存放多个值可以被使用多次定义多个变量复合数据类型-TABLE由两个组件组成:数据类型为BINARY_INT
11、EGER的主键数据类型为标量的列Table类型没有长度限制,可以动态增长PL/SQLTABLE结构主键列......1Jones2Smith3Maduro......BINARY_INTEGER标量TABLE类型又分为索引表(INDEX-BYTABLES)和嵌套表(NESTEDTABLES)索引表有两列组成(KEY和VALUE),
此文档下载收益归作者所有