问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

如何在JDBC里调用PLSQL创建的存储过程?

发布网友 发布时间:2022-04-08 02:18

我来回答

2个回答

懂视网 时间:2022-04-08 06:39

在JDBC简单封装的基础上实现

public class UserDao{

  public static void testGetUser(String userName) throws Exception{

    Connection conn=null;

    CallableStatement callableStatement=null;

    ResultSet resultSet=null;

    try{

      conn=JdbcUtils.getConnetcion();

      String sql="{call addUser(?,?,?,?)}";//调用数据库addUser存储过程,有四个参数,最后一个参数是输出新数据的ID

      callableStatement=conn.prepareCall(sql);

      callableStatement.setString(1,"test");

      callableStatement.setDate(2,new java.sql.Date(System.currentTimeMillis()));

      callableStatement.setFloat(3,100f);

      callableStatement.registerOutParameter(4,Types.INTEGER);

      callableStatement.excuteUpdate();

      int id=callableStatement.getInt(4);//获得存储过程的输出参数值

    }finally{

      JdbcUtils.freeResource(resultSet,preparedStatement,conn);

    }

  }

}

初学JDBC,调用存储过程

标签:

热心网友 时间:2022-04-08 03:47

import oracle.jdbc.*;
import oracle.sql.*;
import java.sql.*;
public class ReturnIndexTable
{
Connection ociconn=null;
OracleCallableStatement stmt =null;
public String[] getTable(String in_param)
{
String[] reAry=null;
try
{
OracleDriver S_Driver=null;
if(S_Driver==null)
S_Driver=new oracle.jdbc.OracleDriver();
DriverManager.registerDriver(S_Driver);
String url="jdbc:oracle:oci8:@test";
String user="user";
String password=" password";
ociconn= DriverManager.getConnection(url,user,password);
stmt =(OracleCallableStatement)ociconn.prepareCall("begin yejf_count(?,?); end;");
// 返回的索引表最大长度(可以大于索引表实际长度)
int maxLen =31;
// 索引表元素类型
int elemSqlType = OracleTypes.VARCHAR;
//索引表元素长度(CHAR, VARCHAR or RAW),其它元素类型可忽略该项值,但该参数仍须定义
int elemMaxLen=50;
stmt.setString(1,in_param);
// 注册返回参数
stmt.registerIndexTableOutParameter(2,maxLen,elemSqlType,elemMaxLen);
stmt.execute();
// 返回数组类型
reAry=(String[])stmt.getPlsqlIndexTable(2);
}
catch (Exception e)
{e.printStackTrace();
}
finally
{return reAry;
}
}
//关闭连接.............
}
如何执行存储过程

打开plsql,输入登录名和密码进行登录。登录成功后,进入命令窗口。在窗口里输入存储过程,例子所示 输入setserveroutputon;按回车键 用execute存储过程名(参数)。执行存储过程。或者也可以用 begin 存储过程名(参数)。end。在其他代码中,比如java里也可以调用存储过程 ...

plsql中怎么调用带输出参数的存储过程

1、首先打开一个的PLSQL Developer的界面中,点击左上角的工具,如下图所示。2、然后在打开的工具下拉菜单中,点击首选项,如下图所示。3、接着在打开的窗口中,点击左侧中的输出选项,如下图所示。4、进入到了输出界面中,在缓冲区大小中输入大小。5、大小输入完成之后,点击确定,如下图所示就完成...

请问plsql developer如何调试package里面的存储过程啊,谢谢

在最左边包头或包体浏览器里选择要测试的过程,点反键,最底下是test按钮,点击后进入调用测试界面,输入参数执行即可

oracle 使用断点调试函数时如何进入被调用的存储过程?

首先向你推荐工具:PL/SQL Developer。通过这个工具登录数据库后,找到你要调试的存储过程,右键单击,选择‘test’选项,然后就会出现如图所示的调试界面。点击图标1,进入存储过程调试的阶段,注意:如果存储过程需要入参,那么需要在点1图标之前输入入参,入参的输入在打开的test窗口的下方。单击图标2所示...

jdbc调用存储过程为什么语句不能加分号

如果你在程序里面写sql,就不要加分号,在程序里面编译器会把分号当做sql本身的一部分,所以会报错 如果是在查询工具里面(比如plsql),这个时候可以加上分号,在工具里面分号是个分隔符,看到分号就标志着本条sql语句结束了; 当然不加也可以,在工具里面看不到分号就认为本条sql没有结束。 比如...

plsql存储过程如何调试

1. 打开PL/SQL Developer如果 在机器上安装了PL/SQL Developer的话,打开PL/SQL Developer界面输入 用户名,密码和host名字,这个跟在程序中web.config中配置的完全相同,点击确定 找到 需要调试的存储过程所在的包(Package bodies),如PACK_ACTIVITY,点击右键,在弹出菜单中选择[查看],得到包中的所有...

plsql developer 里怎么写存储过程,和执行存储过程,怎么查看存储过程和...

--建立存储过程:create or replace procedure query_BOOK(name IN OUT NUMBER,MY_BOOK OUT VARCHAR2,MY_BOOK2 OUT VARCHAR2) is begin select 编号 ,书名,价格 INTO name,MY_BOOK,MY_BOOK2 from BOOK where 编号=name;end query_BOOK;--调用存储过程:declare v_name number(10);v_my_book ...

oracle中怎么在plsql中调用存储过程

打开set serveroutput on还需要有输出内容才可以显示。如,有以下存储过程:create or replace procedure p_test as v_begintime varchar2(20);v_endtime varchar2(20);v_str varchar2(10);begin v_begintime:=to_char(sysdate,'yyyy-mm-dd hh24:mi:ss');select 'badkano' into v_str from...

如何使用PLSQL存储过程建表

存储过程里建表要用 execute immediate;比如 create PROCEDURE test is begin execute immediate 'CREATE TABLE TEMP_DCY_DDM_GZ AS SELECT AA.DEV_ID,AA.RX_POWER,AA.TX_POWER,AA.P_RX_POWER,AA.P_TX_POWER,AA.DN_ATTN,AA.UP_ATTN,AA.COLLECT_TIME,AA.达标情况 FROM (SELECT A.DEV_ID,A...

如何用plsql查看存储过程的源码!!!

1、首先双击plsql图标,进入登录界面,输入用户名和密码,输送数据库实例名。2、点击左上角new,并点击sqlwindow,进入到数据库界面。3、该图是数据库存储过程的简单布局。有存储过程的定义,包括输入变量、输出变量等,输入变量以in定义,输出以out定义;变量部分:可根据程序需求自行定义;数据处理逻辑部分...

java如何调用存储过程 如何创建存储过程 存储过程的创建和使用 创建存储过程的关键字 存储过程调用 mysql调用存储过程 jdbc调用存储过程 plsql调用存储过程 调用存储过程sql
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
匡威有哪些款式的休闲鞋值得入手? 硅钙板价格多少硅钙板价格多少一平米 匡威什么颜色最值得买 匡威最值得入手的鞋子 山海旅人土地公:神话故事中的土地神 《中国的土地》中,诗人为什么说中国的土地是“神奇的? ...这首诗中,如何写出了爱;刘湛秋在《中国的土地》如何写出了神奇... 有限责任公司变更经营范围,变更登记申请书中的许可经营项目和一般经营... 《中国的土地》中,诗人为什么说中国的土地是“神奇的土地” E盘中的一个文件夹打不开并提示explorer应用程序错误 我的电脑一打开E盘就显示explorer.exe遇到问题需要关闭(如图所示),点... 听说滑雪大冒险2有好多逗比坐骑哇? 滑雪大冒险2新世界人物道具解析攻略 Ski Safari 2怎么玩 求 雪怪大冒险 Smallfoot 百度云免费在线观看资源 小米看电视猫闪退怎么办? 滑雪大冒险2怎样骑着雪怪跳150米?急求答案!谢谢! 创维电视用电视猫视频看视频为什么老是闪退 前世男主救女主被做成了人彘。女主重生,男主叫祁翊是摄政王。男主还有两个手下叫当归和黄芪,求小说名 滑雪大冒险2任务敲三下雪怪的帽子怎么完成 手机版的电视猫闪退啊,哪儿下新的 古代女主重生文,女主有二个妹妹,其中有一个妹妹是坐轮椅的,男主是女主的师兄,女主重生前,男主摄政王 滑雪大冒险2动物有什么作用 滑雪大冒险2任务敲三下雪怪的帽子 电脑版滑雪大冒险2如何完成一个特技? 电视猫tv版最近怎么了,我看电视的时候怎么总是自动退出软件了,说什么意外停止,是怎么回事啊! 家里能连上wifi但是不能上网? 滑雪大冒险2怎么骑着雪怪跳150米 电视猫tv为什么看一会就停止运行 电视猫看电影经常闪退是怎么回事 怎么查看注册时间? 雪莲果中间为什么是咸的? 找一本小说,女的好像是将军男的是摄政王,两人都是重生的 小米小盒子看电视猫老是闪退,有人遇到过吗 请问这是什么动漫电影? 电视猫怎么看不了影视 小米盒子看电视猫视频闪退的解决办法 女主叫小珍儿,男主是摄政王的古言小说 智能电视看电视猫闪退怎么办? 《雪怪大冒险》有哪些值得关注的细节? 重生小说男主是摄政王女主叫沈从容 《雪怪大冒险》中你最喜欢哪个人物,为什么喜欢? 猫播的服务器怎么回事,老是闪退? 《雪怪大冒险》动画里哪些情节让你觉得很真实? 女主重生男主摄政王,女主角小时候一直帮男主角,师兄妹 电视猫为什么不能看了 怎么评价动画电影《雪怪大冒险》? 一部小说的女主是绶靖长公主男主是摄政王小说叫什么名字? 求 雪怪大冒险 百度云免费在线观看资源 皇上是痴儿 女主是皇后 男主是个摄政王。的小说、什么名字? 讲述奇幻冒险的电影《雪怪大冒险》,它是如何受到广大小朋友喜爱的? 雪怪大冒险什么时候上映