gpt4 book ai didi

java - 如何在IN子句内的SQL查询中设置绑定(bind)变量的值

转载 作者:行者123 更新时间:2023-12-02 09:59:39 25 4
gpt4 key购买 nike

我在我的 View 对象中绑定(bind)了一个变量。我正在动态更改绑定(bind)变量并执行 View 对象。问题是我怀疑绑定(bind)变量正在接受一些“”或“”。

我已经调试了该问题并尝试打印查询。但仍在问题中,我得到了相同的查询,包括绑定(bind)变量。

我的查询

SELECT APFileHeaderEO.ACTIVE,     
APFileHeaderEO.CUSTOM_HEADER,
APFileHeaderEO.ENT_BY,
APFileHeaderEO.ENT_DATE,
APFileHeaderEO.FEEDER_ID,
APFileHeaderEO.FILE_HEADER_ID,
APFileHeaderEO.FILE_NAME,
APFileHeaderEO.MODIFY_BY,
APFileHeaderEO.MODIFY_DATE,
APFileHeaderEO.NEW_FILE_NAME,
APFileHeaderEO.SOURCE_SYSTEM,
APFileHeaderEO.STATUS,
APFileHeaderEO.TOTAL_RECORD_COUNTS,
APFileHeaderEO.COMMENTS,
APFileHeaderEO.CONTROL_TOTAL,
APFileHeaderEO.ACCOUNTING_DATE,
APFileHeaderEO.GENERIC_HEADER_ID,
APFileHeaderEO.GL_DATE,
APFileHeaderEO.GROSS_TOTAL_AMOUNT,
APFileHeaderEO.INSTANCE_ID,
APFileHeaderEO.INVOICE_RECEIVED_DATE,
APFileHeaderEO.NET_TOTAL_AMOUNT,
APFileHeaderEO.NUMBEROFINVOICES,
APFileHeaderEO.SOURCE,
APFileHeaderEO.SOURCE_FILE_PRODUCE_DATE,
APFileHeaderEO.VAT_TOTAL_AMOUNT,
APFileHeaderEO.SOURCE_FILE_NAME
FROM EI_AP_FILE_HEADER APFileHeaderEO where APFileHeaderEO.source in (NVL(:source1,APFileHeaderEO.source))

java代码//source 是一个字符串变量

//例如 source ="'LCC','FIN','AR','CandD','Transactions','Creator'";

apFileHeaderVO.setsource1(source.toString());

apFileHeaderVO.executeQuery();

最佳答案

终于找到结果了。可以使用 connect by 和正则表达式进行归档

SELECT APFileHeaderEO.ACTIVE,     
APFileHeaderEO.CUSTOM_HEADER,
APFileHeaderEO.ENT_BY,
APFileHeaderEO.ENT_DATE,
APFileHeaderEO.FEEDER_ID,
APFileHeaderEO.FILE_HEADER_ID,
APFileHeaderEO.FILE_NAME,
APFileHeaderEO.MODIFY_BY,
APFileHeaderEO.MODIFY_DATE,
APFileHeaderEO.NEW_FILE_NAME,
APFileHeaderEO.SOURCE_SYSTEM,
APFileHeaderEO.STATUS,
APFileHeaderEO.TOTAL_RECORD_COUNTS,
APFileHeaderEO.COMMENTS,
APFileHeaderEO.CONTROL_TOTAL,
APFileHeaderEO.ACCOUNTING_DATE,
APFileHeaderEO.GENERIC_HEADER_ID,
APFileHeaderEO.GL_DATE,
APFileHeaderEO.GROSS_TOTAL_AMOUNT,
APFileHeaderEO.INSTANCE_ID,
APFileHeaderEO.INVOICE_RECEIVED_DATE,
APFileHeaderEO.NET_TOTAL_AMOUNT,
APFileHeaderEO.NUMBEROFINVOICES,
APFileHeaderEO.SOURCE,
APFileHeaderEO.SOURCE_FILE_PRODUCE_DATE,
APFileHeaderEO.VAT_TOTAL_AMOUNT,
APFileHeaderEO.SOURCE_FILE_NAME
FROM EI_AP_FILE_HEADER APFileHeaderEO where APFileHeaderEO.source in (select trim('''' from regexp_substr(:source1,'[^,]+', 1, level))
from dual
connect by
regexp_substr(:source1, '[^,]+', 1, level)
is not null);

关于java - 如何在IN子句内的SQL查询中设置绑定(bind)变量的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55730016/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com