问题描述
我正在将PL / SQL代码转换为Java代码以摆脱数据库依赖性。在PL / SQL中,我们有类似的内容。
SELECT Status_Code,ERROR_CODE,Error_Message
INTO I_Status_Code,I_Error_Code,I_Error_Message
FROM T_Parent_Lots_Api
WHERE Transaction_Id = I_Transaction_Id;
EXCEPTION
WHEN No_Data_Found THEN
I_Status_Code := Failure_Code;
I_Error_Code := SQLCODE;
I_Error_Message := 'Error for transaction id -' || I_Transaction_Id ||
'- in tlotutils.t_update_txn_status-' || SQLERRM;
RETURN;
由于关键字INTO
,我们似乎无法在Java中运行上述SQL查询。我可以编写catch块来处理异常。我可以删除INTO
关键字并执行查询,然后从ResultSet
分配它们,但是这里的挑战是,如果select查询未返回任何数据,则相对Java代码SQLException.getErrorCode()
&{ SQLException.getSQLState
和SQLCODE
函数的{1}}返回空
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)