oracle pl/sql之在java中怎么调用oracle函数

建立函数:

create or replace function my_fun(in_no in number) return varchar2 is
out_name varchar2(64);
begin
select ename into out_name from emp where emp.empno=in_no;
return out_name;
end my_fun;

java程序演示:

import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Types;

public class JavaCallMath {
public static void main(String[] args) {
  String driver="oracle.jdbc.driver.OracleDriver";
  String url="jdbc:oracle:thin:@127.0.0.1:1521:orcl";
  String user="scott";
  String password="ztoracle";
  try {
    Class.forName(driver);
    Connection c=DriverManager.getConnection(url, user, password);
    CallableStatement cs=c.prepareCall("{?=call my_fun(?)}");
    cs.setInt(2, 9527);
  cs.registerOutParameter(1, Types.VARCHAR);
  cs.execute();
  System.out.println(cs.getString(1));
} catch (ClassNotFoundException e) {
throw new RuntimeException();
} catch (SQLException e) {

}
}

}

时间: 2024-10-12 10:52:05

oracle pl/sql之在java中怎么调用oracle函数的相关文章

oracle pl/sql之在java中调用带有输入输出参数的oracle存储过程

只需注意一点输出参数是用CallableStatement里面的registerOutParameter方法注册进去 存储过程: import java.sql.CallableStatement;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.SQLException;import java.sql.Types; //在java中

oracle pl/sql之在java中调用无参的oracle存储过程

在java 中调用oracle的存储过程和jdbc的操作类似都是分以下几个步骤 1:加载驱动 2:链接数据库并获得一个数据库链接对象 3:执行语句 4:操作结果集 5:关闭资源 前提是:存储过程已写好 create or replace procedure my_procedure is begin insert into emp(empno,ename) values(9527,'唐伯虎'); end; java程序演示: import java.sql.CallableStatement;i

oracle pl/sql之java中调用oracle有参存储过程

存储过程: create or replace procedure my_procedure(in_no in number,in_name in varchar2) is begin insert into emp(empno,ename) values(in_no,in_name); end; java程序演示: import java.sql.CallableStatement;import java.sql.Connection;import java.sql.DriverManager

ORACLE PL/SQL 中序列(sequence)的简易使用方法介绍

如果我是C罗 原文 ORACLE PL/SQL 中序列(sequence)的简易使用方法介绍 sequence在ORACLE中应用十分广泛,就是序列号的意思,会自动增加指定变数,如逐次增加1或者2或者其他. 1.创建序列 Create Sequence 你首先要有CREATE SEQUENCE或者CREATE ANY SEQUENCE 权限 CREATE SEQUENCE CUX_DEMO_SEQUENCEMINVALUE 1MAXVALUE 99999999999START WITH 1000

[Oracle系列整理04] oracle pl/sql 基础

PL/SQL块中只能直接嵌入SELECT,DML(INSERT,UPDATE,DELETE)以及事务控制语句 (COMMIT,ROLLBACK,SAVEPOINT),而不能直接嵌入DDL语句(CREATE,ALTER,DROP)和DCL语句 (GRANT,REVOKE) 1.检索单行数据    1.1使用标量变量接受数据  v_ename emp.ename%type;  v_sal   emp.sal%type;  select ename,sal into v_ename,v_sal fro

Oracle PL/SQL随堂笔记总结

1.pl/sql编程 1.理解oracle的pl/sql的概念    2.掌握pl/sql编程技术(过程.函数.触发器)    pl/sql是标准sql语句的扩展    简介        1.过程.函数.触发器都是由pl/sql编写        2.过程.函数.触发器是在oracle中        3.pl/sql是非常强大的过程语言        4.过程.函数等可以在java程序被调用    学习必要性:        1.提高应用程序的性能        2.模块化的设计思想    

[推荐]ORACLE PL/SQL编程详解之一:PL/SQL 程序设计简介(千里之行,始于足下)

原文:[推荐]ORACLE PL/SQL编程详解之一:PL/SQL 程序设计简介(千里之行,始于足下) [推荐]ORACLE PL/SQL编程详解之一: PL/SQL 程序设计简介(千里之行,始于足下) ——通过知识共享树立个人品牌. 继上六篇: [顶]ORACLE PL/SQL编程详解之二:PL/SQL块结构和组成元素(为山九仞,岂一日之功) [推荐]ORACLE PL/SQL编程详解之三:PL/SQL流程控制语句(不给规则,不成方圆) [推荐]ORACLE PL/SQL编程之四:把游标说透(

[强烈推荐]ORACLE PL/SQL编程详解之七:程序包的创建与应用(聪明在于学习,天才在于积累!)

原文:[强烈推荐]ORACLE PL/SQL编程详解之七:程序包的创建与应用(聪明在于学习,天才在于积累!) [强烈推荐]ORACLE PL/SQL编程详解之七: 程序包的创建与应用(聪明在于学习,天才在于积累!) ——通过知识共享树立个人品牌.   继上七篇:            [推荐]ORACLE PL/SQL编程详解之一:PL/SQL 程序设计简介(千里之行,始于足下)            [顶]ORACLE PL/SQL编程详解之二:PL/SQL块结构和组成元素(为山九仞,岂一日之

ORACLE PL/SQL编程总结(一)

----------PL/SQL 程序设计简介----------- 1.1   SQL与PL/SQL 1.1.1   什么是PL/SQL? PL/SQL是 Procedure Language & Structured Query Language 的缩写.PL/SQL是对SQL语言存储过程语言的扩展.从ORACLE6以后,ORACLE的RDBMS附带了PL/SQL.它现在已经成为一种过程处理语言,简称PL/SQL.目前的PL/SQL包括两部分,一部分是数据库引擎部分:另一部分是可嵌入到许多产