资讯专栏INFORMATION COLUMN

PL/SQL 中的存储过程与函数

sutaking / 2143人阅读

摘要:如可使用的函数来计算字符串的长度这将返回,也就是字符串的长度关键字该关键字是用来调用存储过程的。

存储过程概述 PL/SQL块分类

PL/SQL块分类:匿名块、命名块
匿名块:不保存在数据库中,没有名称,不可以重复调用
命名块:存在数据库中,有名称,可以重复调用
命名块:存储过程、函数、触发器、包

存储过程与函数概述

存储过程与函数:都是一个子程序,完成一定的功能
存储过程:没有返回值,可以调用
函数:必须包含一个返回值,只能作为表达式的一部分使用

存储过程的创建 存储过程的创建
CREATE PROCEDURE proc[(name [IN|OUT|INOUT] type, ...)]
AS|IS
    declare statement;
BEGIN
    statement;
EXCEPTION
    exception process;
END;
参数 描述 详解
IN 只读 当 SQL 语句创建的时候,该参数的值是未知的。你可以用 setXXX() 方法将值绑定到 IN 参数里
OUT 只写 该参数的值是由 SQL 语句的返回值。你可以用 getXXX() 方法从 OUT 参数中检索值
INOUT 可读写 该参数同时提供输入和输出值。你可以用 setXXX() 方法将值绑定到 IN 参数里,并且也可以用 getXXX() 方法从 OUT 参数中检索值
存储过程的调用和删除 存储过程的调用

PL/SQL块:

proc[(arg1, ...)]

SQL Plus环境

BEGIN
    proc[(arg1, ...)]
END;
删除存储过程

DROP PROCEDURE proc_name;

JDBC 的 SQL 转义语法

转义语法使能够让你通过使用标准的 JDBC 方法和属性,来灵活的使用数据库的某些特定功能,而该特定功能对你来说本来是不可用的。常用的 SQL 转义语法格式如下所示:

{keyword "parameters"}
escape 关键字

该关键字在 LIKE 子句中使用,来定义转义字符。当使用 SQL 通配符%,来匹配零个或多个字符时,该关键字就非常有用。例如-

String sql = "SELECT symbol FROM MathSymbols
              WHERE symbol LIKE "\%" {escape ""}";
stmt.execute(sql);

如使用反斜杠字符()作为转义字符,必须在 Java 字符串里使用两个反斜杠字符,因为反斜杠也是一个Java转义字符

fn 关键字

该关键字代表在数据库管理系统中使用标量函数。如可使用 SQL 的 length 函数来计算字符串的长度-

{fn length("Hello World")}

这将返回11,也就是字符串"Hello World"的长度

call 关键字

该关键字是用来调用存储过程的。例如,对于一个需要一个 IN 参数的存储过程,使用以下语法-

{call my_procedure(?)};

对于需要一个 IN 参数并返回一个 OUT 参数的存储过程,使用下面的语法-

{? = call my_procedure(?)};
oj 关键字

该关键字用来表示外部连接,其语法如下所示-

{oj outer-join}

其中 outer - join = 表 { LEFT | RIGHT | FULL } OUTER JOIN {表| outer - join }的搜索条件。例如-

String sql = "SELECT Employees 
              FROM {oj ThisTable RIGHT
              OUTER JOIN ThatTable on id = "100"}";
stmt.execute(sql);

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/32158.html

相关文章

  • PL/SQL Developer安装及链接Oracle

    摘要:准备工具前提是你已安装。我安装的是,百度云盘下载地址,提取密码需要的工具客户端,你可以下载我百度云盘里的,链接,提取密码,也可以到官网自行下载,注意最好下载位的。安转注册和配置安装直接双击文件安装。 1.PL/SQL Developer简介 PL/SQL Developer是一个集成开发环境,专门面向Oracle数据库存储程序单元的开发。如今,有越来越多的商业逻辑和应用逻辑转向了Ora...

    张汉庆 评论0 收藏0
  • PL/SQL Developer安装及链接Oracle

    摘要:准备工具前提是你已安装。我安装的是,百度云盘下载地址,提取密码需要的工具客户端,你可以下载我百度云盘里的,链接,提取密码,也可以到官网自行下载,注意最好下载位的。安转注册和配置安装直接双击文件安装。 1.PL/SQL Developer简介 PL/SQL Developer是一个集成开发环境,专门面向Oracle数据库存储程序单元的开发。如今,有越来越多的商业逻辑和应用逻辑转向了Ora...

    lookSomeone 评论0 收藏0
  • Oracle数据库之FORALLBULK COLLECT语句

    本文原发布于简书,地址为: Oracle数据库之FORALL与BULK COLLECT语句。更多数据库资讯请参看github: 数据库知识汇总 1 PL/SQL块的执行过程 当PL/SQL运行时引擎处理一块代码时,它使用PL/SQL引擎来执行过程化的代码,而将SQL语句发送给SQL引擎来执行;SQL引擎执行完毕后,将结果再返回给PL/SQL引擎。这种在PL/SQL引擎和SQL引擎之间的交互,称为...

    developerworks 评论0 收藏0
  • PL/SQL(Procedure Language & Structured Query L

    摘要:基本语法动态获取表中字段的类型,,记录类型返回一个记录类型流程控制选择结构。大于在到之间小于循环结构。 1.基本语法 declare v_id employees.employee_id % type ; --动态获取表中字段的类型 v_email employees.email % type ; v_salary employees.salary % type ;be...

    hss01248 评论0 收藏0
  • Oracle 11g Express 及 PL/SQL Developer安装

    摘要:安装下载安装百度搜索,点击进入官网点击数据库下载点击点击,然后下载解压后双击安装安装过程很简单,可以指定安装的目录。安装完成后,双击打开,会显示登录窗口,点击取消。 1.安装Oracle 11g Express 1.1 下载安装Oracle 11g Express 百度搜索oracle,点击进入官网: showImg(https://segmentfault.com/img/bV4gy...

    testbird 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<