【发布时间】:2020-09-21 15:55:31
【问题描述】:
我想修改我的SELECT语句如下
SELECT blob_data from table where id = ?
到
SELECT blob_data from table where id IN (?, ?, ?, ?, ?)
TABLE
ID NOT NULL VARCHAR2(255)
BLOB_DATA BLOB
这种方法的问题是,在 Java 中执行循环时,我的 ID 可能少于 5 个。我想编写一个存储过程+CallableStatement 而不是 PreparedStatement 来触发 second 查询。 [我想写 5 个不同的存储过程来接受 1 到 5 个参数,但我认为应该有更好的方法!]
如何编写一个接受可变数量绑定参数的存储过程?另外,Java 和相应的 Oracle 代码看起来如何?
我将非常感谢有关此代码的帮助
【问题讨论】:
-
只是一个愚蠢的想法。如果调用者为缺少的 ID 指定 NULL,它应该可以工作。
标签: oracle stored-procedures plsql