问题标签 [callable-statement]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 通过 CallableStatement 调用存储过程时出现“参数不是 OUT 参数”错误
我一直在尝试在 MySQL Workbanch 中创建的调用过程“proc”:
使用此应用程序:
但我总是得到这个错误:
几个小时以来,我一直试图找出问题所在,但没有成功。我看到了很多问题,但是: 这是没用的,因为在函数中不能是事务
这是没用的,因为当我使用命名参数 NullPointerEx 时被抛出(为什么??)
这是没用的,因为存在过程,并且当我仅使用 IN 参数时不会抛出任何异常,但使用 INOUT 或 OUT 会抛出提到的异常
所以我的问题很简单:知道有什么问题吗?
java - Oracle from Java. CallableStatement and Null for object parameter?
I've got, what started as a fairly complex stored procedure boils down to a very simple use case that doesn't seem to be working as i'm expecting.
The stored procedure now looks like this for my test:
I can call this stored procedure from java using the callable statement API
The above works as expeted. The method executes and completes successfully. Nows where it gets tricky. We've created a set of oracle object types to allow us to pass more complicated structures around similar to the following
if i simply change the procedure to accept these types as parameters, like this:
Oracle will break with PLS-00306: wrong number or types of arguments in call to 'CNV_CREATE_PERSON'
What gives? If i call this procedure from another procedure with null as the value, it works fine. Only calling it from the java API does it break.
I've been scouring the documentation for any solution and can't find one. Perhaps one of you wise and learned fellows could point me in the right direction.
Thanks
java - Mysql 通过 Java 可调用语句也在 db 中插入转义字符 \
从java它插入像test\'share\'today16102014但从mysql命令行它插入像test'share'today16102014。如何制作像test'share'today16102014 这样的 java 插入。
java - 可调用语句未完成执行,但相同的过程已完全执行
我遇到了关于存储过程执行的问题。每当我从胖客户端系统执行程序时,通常需要一个多小时甚至更长时间,callableStatement.execute()
就会卡住。即,在后端程序已完成,但系统仍显示在运行模式。我检查了后端,注意到程序的最后一行也被执行了。这可能是什么原因?
我正在使用 Oracle 11g 和 ojdbc6 驱动程序。
在数据库上为创建的配置文件设置以下参数:
java - 错误:子查询返回多于一行
嗨,我一直在尝试通过 CallableStatement 调用该过程来选择多行。当我尝试将结果集填充到组合框时,代码返回错误如下。
Java错误:
存储过程:
java - 如何使用 ref 游标获取多行并在 Java 中检索它们?
问题陈述是这样的:
我必须创建一个过程来获取Employees1 表中的所有数据(实际上只有9 条记录),然后通过在Java 中调用这个过程来显示这些数据。我正在开发一个基于 struts 1.3 的遗留应用程序,但我想这不应该是任何问题。
下面是我创建的过程:
这是我的 Java 代码:
这是我在控制台遇到的错误:
我已经很久没有使用 PL-SQL 了。请帮我找出我哪里出错了。提前致谢。
注意:我使用 Oracle 10G express edition 作为数据库。
oracle - SQLException 捕获无效的列索引
谁能帮我解决这个错误:我尝试了不同的方法来解决这个错误,但无法成功。
这是一个包和过程以及我从中调用该过程的 java 文件。我第一次尝试调用程序。我以前从未使用过程序,所以如果有人能给我一个想法,我将不胜感激。
mydemo2.java
java - 如何解决:CallableStatement 执行返回错误“ORA-06502: PL/SQL: numeric or value error: character to number conversion error”?
我尝试将数据从一个表的字符串字段放入另一个表的数字字段。
如果我在 Oracle SQL Developer 或 Toad 等 IDE 中执行此操作,它可以正常工作,但如果我在我的 java 代码中执行此操作,则会出现错误。
如何解决?
下面有我的例子。
数据库:我创建了两个表 - 带有数字字段的 t_num 和带有 varchar2 字段的 t_str - 并将值放入第二个表 t_str
我还创建了将值从 t_str 放到 t_num 的过程
网络逻辑服务器:
index.jsp:点击按钮向put.jsp发送请求
put.jsp:从具有 jndi 名称 jdbc/test 的数据源获取连接并调用过程 put_to_t_num
最后我在浏览器控制台中遇到错误:
但是如果我在 IDE 中做这样的事情,它工作得很好
我想这可能是编码的情况,但我无法在我的 java 代码中解决它。
如何解决这个问题?
我还发现,如果没有将值 2 3,3 2 添加到 t_str - 我得到了“成功”。
我该如何处理这种情况?
为什么IDE会这样做,而java代码却不这样做?
java - 无法执行可调用语句,获取 Parameter number 2 is not an OUT parameter SQL Exception
我在 MySQL 工作台中创建了以下过程:
以下是我的java代码:
但是在执行时出现以下错误:
java.sql.SQLException:参数号 2 不是 OUT 参数
即使我将可调用语句更改为 ->String sql ="{? = call city(?,?,?)}";
我收到新错误:
java.sql.SQLException:无法为存储函数调用的返回值设置 IN 参数。
db2 - DB2 大型机:queryTimeout 对 SqlTransactionRollbackException 不起作用:SQLCODE=-911,SQLSTATE=40001
我们从 DB2 Mainframe 中看到了以下异常。我们确实设置了 CallableStatement.querytimeout,但在这种情况下它永远不会真正起作用。有什么建议么?谢谢。
DB2 SQL 错误:SQLCODE=-911, SQLSTATE=40001, SQLERRMC=00C9008E;00000801;NULLID.SYSSTAT.5359534C564C3031, DRIVER=3.61.109; 嵌套异常是 com.ibm.db2.jcc.am。SqlTransactionRollbackException : DB2 SQL 错误: SQLCODE=-911, SQLSTATE=40001, SQLERRMC=00C9008E;00000801;NULLID.SYSSTAT.5359534C564C3031, DRIVER=3.61.109
以下异常也是如此。查询超时不起作用。
嵌套异常是 com.ibm.db2.jcc.am.SqlException: UNSUCCESSFUL EXECUTION CAUSED BY UNAVAILABLE RESOURCE。原因 00E30083、资源类型 00000802 和资源名称 BINDLOCK