当前位置: 首页 > 面试题库 >

Java Oracle例外-“列表中的最大表达式数为1000”

马亮
2023-03-14
问题内容

我将字符串列表传递给我的查询(编写的SQL查询)以获取所需的数据。但是我得到了这个例外:

ora-01795列表中的最大表达式数为1000

我检查了传递给查询IN参数的列表中是否有1000多个条目。


问题答案:

这是查询中列表传递次数的一个Oracle限制。

  1. 您将不得不砍掉您的查询或
  2. 而是在IN子句中提供子查询/联接。


 类似资料:
  • 问题内容: 我正在使用java / hibernate / Oracle。我有一个超过3000个条目的列表。如果我通过整个列表,我将获得以下例外。 引起原因:java.sql.SQLException:ORA-01795:列表中的最大表达式数为1000 为了解决此问题,我将列表分为多个子列表,每个子列表将有1000个条目。对于每千个条目,我都会触发一个查询。它工作正常。 请澄清一下,有没有更好的解

  • 我不确定这是否可以使用正则表达式。我会尝试使用正则表达式,但如果不可能,我会切换到双重验证。 我的数据库(postgresql)接受为15,6(最多15位,最多6位小数),因此如果我有10位整数,我可以有5位小数。小数分隔符被忽略。 我目前有一个正则表达式(逗号是小数分隔符): 它不验证总长度,只验证左侧的数字。但由于用户也可以键入点(千位分隔符),我有一个怪物:

  • 问题内容: 每当我尝试将列表设置为IN表达式中使用的参数时,都会收到非法参数异常。互联网上的各种帖子似乎都表明这是可能的,但对我来说肯定不起作用。我正在使用带有Toplink的Glassfish V2.1。 有没有其他人能够使它正常工作,如果可以的话? 这是一些示例代码: 以及堆栈跟踪的相关部分: 问题答案: 您的JPQL无效,请删除括号

  • 问题内容: 我正在比较两个字符串列表,以查找可能的匹配项。例: 基本上,对于每个字符串,我都想查看其中是否包含全部或部分包含的字符串。以上代码的输出应为: 但是,在实际情况下,我在测试中有大约225K字符串,而在test2中有大约5K字符串。此比较花费的时间太长,希望查看是否有可能优化比较。分析test2中的前1.5K项大约需要10分钟。因此,至少需要30到40分钟才能完成比较。 提前致谢 问题答

  • 问题内容: 有没有办法让AngularJS在模型数据中评估表达式? HTML: 模型: 最终结果将是:。 问题答案: 您可以使用该服务来插值字符串… JSFiddle

  • 问题内容: 给定一个包含一定数量的方括号和其他字符的字符串,我想找到所有以方括号开头并带有一定数量字母的方括号。例如,如果字符串是 ] [abc] [123] abc] 我只想找到第二个结束括号。 以下正则表达式 (?<= [az] +)\] 会找到第二个结束括号,也是最后一个: ] [abc ] [123] abc ] 由于我只想查找第一个,因此我对正则表达式进行了明显的更改。 (?<= \ [