- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我使用 Spring SimpleJdbcCall 调用此 Oracle 存储过程
代码抛出“由以下原因引起:java.sql.SQLException:无效的列类型:1111”
org.springframework.jdbc.UncategorizedSQLException: CallableStatementCallback;
uncategorized SQLException for SQL [{call O_XEROX_PRNT_PRT(?, ?)}]; SQL state [99999]; error code [17004]; Invalid column type: 1111;
nested exception is java.sql.SQLException: Invalid column type: 1111
这是存储过程,我尝试尽可能简化它以进行测试。所以它除了随机化一些值并返回随机消息之外什么也不做,
存储过程在 SqlDeveloper 中执行良好...
CREATE OR REPLACE PROCEDURE O_XEROX_PRNT_PRT
(
CLIENT_KEY IN VARCHAR2
,P_STATUS IN VARCHAR2
-- OUTPUT back to java
, O_STATUS OUT BOOLEAN
, O_MESSAGE OUT VARCHAR2
) AS
PROC_STATUS BOOLEAN;
PROC_ERROR_MESSAGE VARCHAR2(4000);
rand_num number;
BEGIN
dbms_output.put_line('O_XEROX_PRNT_PRT ');
select round(dbms_random.value(1,10)) into rand_num from dual;
IF rand_num > 8 THEN
PROC_STATUS := TRUE;
PROC_ERROR_MESSAGE := 'ALL IS GOOD';
ELSE
PROC_STATUS := FALSE;
PROC_ERROR_MESSAGE := 'SOMTHING WENT WRONG!!! ';
END IF;
END O_XEROX_PRNT_PRT;
我正在使用的Java代码:
String CLIENT_KEY = 'CLIENT_KEY val';
String P_STATUS = 'Printer works';
Boolean O_STATUS =true;
String O_MESSAGE ;
JdbcTemplate template = new JdbcTemplate(printerHubPortalDS);
SimpleJdbcCall jdbcCall = new SimpleJdbcCall(template).withProcedureName("O_XEROX_PRNT_PRT")
.declareParameters(
new SqlParameter(CONST_CLIENT_KEY, Types.VARCHAR),
new SqlParameter(CONST_P_STATUS , Types.VARCHAR),
);
MapSqlParameterSource paramMap = new MapSqlParameterSource()
.addValue(CONST_CLIENT_KEY,CLIENT_KEY)
.addValue(CONST_P_STATUS ,P_STATUS );
//This line is throwing the error
Map<String, Object> resultMap = jdbcCall.execute(paramMap);
String tmp = (String)resultMap.get(CONST_O_STATUS);
O_STATUS = Boolean.valueOf(tmp);
O_MESSAGE = (String) resultMap.get(CONST_O_MESSAGE);
最佳答案
您似乎尚未在 declaredParameters
中定义输出参数。
在当前 SqlParameter
下添加以下内容应该可以解决该错误。
new SqlOutParameter("O_STATUS", Types.BOOLEAN),
new SqlOutParameter("O_MESSAGE", Types.VARCHAR)
关于java - 调用 Oracle 存储过程抛出由 : java. sql.SQLException 引起的异常:无效的列类型:1111,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60012132/
我正在使用 JDBC,并且正在运行一个查询。有没有办法从返回的 SQLException 对象中获取失败的原因? 特别是,我想知道我的查询是否违反了外键约束(以及哪一个)或键约束。 此结果是否特定于供
我用 C# 编写了一段代码,它在我的计算机上运行良好,在 Windows 7 (MS SQL Server 2008) 上运行,但在另一台计算机上运行 Windows Vista (MS SQL Se
我有一个 Web 服务代码,它连接到在 MySQL 上运行的数据库。我清理并构建了它,部署成功,但是当我测试时出现以下错误: Invoking wsimport with http://localho
这个问题已经有答案了: Getting java.sql.SQLException: Operation not allowed after ResultSet closed (2 个回答) 已关闭
我的 user 表以前有字符串主键,现在我添加了一个新字段 userid bigint(20) 并制作了这个主键。然后添加 ALTER TABLE smsusers AUTO_INCREMENT =
我正在尝试在 HSQLDB 数据库中插入新行。我有这个代码: private final String SQL_CREAR_ATLETA=" INSERT INTO ATLETA (ID_ATLETA
错误的屏幕截图我收到指向ItemsService中下面的‘GetAllItems()’方法的SQLException。“无效的列名OrderID1”。我有两个实体,Order和Item,我希望与每个I
错误的屏幕截图我收到指向ItemsService中下面的‘GetAllItems()’方法的SQLException。“无效的列名OrderID1”。我有两个实体,Order和Item,我希望与每个I
Screenshot of errorI am getting an SQLException pointing at the 'GetAllItems()' method below in t
我正在运行我的代码并收到此错误。但这是什么意思? The network path was not found Description: An unhandled exception occurred
对于确实具有平衡事务块的存储过程,您是否遇到过这种异常? 我仔细检查了存储过程,它正好有一个 TRANSACTION BEGIN和对应TRANSACTION END 错误记录 SqlException
我正在编写一个 MVC 5 互联网应用程序,我有一个每小时执行一次的重复任务。此任务使用 DbContext 类更新一些模型对象。该应用程序部署为 Azure 网站。 我每隔几个小时就会收到以下错误:
我有一个程序,可以将大约 1GB 的数据上传到 SQL Azure 数据库。我使用 SqlBulkCopy 上传此数据。我上传了约8,000,000个实体,平均一次上传32,000个实体,最多一次上传
我将我的 SQL Server 数据库从本地移植到生产环境,并在连接期间突然遇到以下错误 System.Data.SqlClient.SqlException: A connection was su
在询问之前我已经搜索过了,但我不知道我是否做错了什么。 我正在尝试做类似的事情: String query = "select nombre from DatosPersonas where nomb
当我尝试运行我的项目时,出现以下错误: java.sql.SQLException: Io exception: Connection refused(DESCRIPTION=(TMP=)(VSNNU
我正在将 DB2 与 JDBC 结合使用,当我在连接闲置几分钟后首次尝试运行时,下面的代码会抛出 SQLException。从第二次开始,它将完全按照它必须的方式工作。 ResultSet.next(
我试图插入用户从我在 NetBeans 上制作的 Java GUI 输入的信息,但我不断收到异常,我似乎无法找出我做错了什么。 (数据库名称是student,表也称为student(我知道不好)它有8
为什么我们在创建 jdbc 连接时必须抛出 SQLException,它的目的是什么?它是什么类型的异常?选中、运行时、未选中? 最佳答案 SQLException 派生自 Exception,但不是
我有一个现有的应用程序,它使用 MS SQL 存储过程来执行一些业务规则。当检测到错误时,使用 RAISERROR 将其作为异常返回到我的 .Net 应用程序。 然后 .Net 应用程序可以使用 Tr
我是一名优秀的程序员,十分优秀!