我收到以下错误:AeSymResolveStatement [775] ...语句(108,512)中位置34338处或附近的元SQL错误。 SQL语句本身的长度超过40,000个字符,因此是个问题。PeopleSoft App Engine SQL步骤/操作中的SQL文本是否有大小限制?
DB是oracle。在工具上运行8.49.24。
我收到以下错误:AeSymResolveStatement [775] ...语句(108,512)中位置34338处或附近的元SQL错误。 SQL语句本身的长度超过40,000个字符,因此是个问题。PeopleSoft App Engine SQL步骤/操作中的SQL文本是否有大小限制?
DB是oracle。在工具上运行8.49.24。
没有这样的限制。
您可以通过创建一个SQL像证实了这一点自己:
select 'x' from PS_INSTALLATION where
1 = 1 and
1 = 1 and
1 = 1 and
1 = 1 and
/* ... copy paste '1 = 1 and' 90000 times or so times more */
1 = 1
虽然它使p侧相当缓慢,这保存和验证就好了。
PeopleCode中有限制,主要是由于字符串长度的限制,但是我从来没有发现存储SQL语句的限制。
我知道应用程序引擎(SQL步骤)中使用的SQL的大小有限制。在尝试在应用程序引擎中使用异常长的SQL时,我曾经收到类似的错误。
如果相同的限制适用于SQL对象,我不会感到惊讶。
要解决这个问题,我能够将SQL拆分为2个(是更新语句)。希望你的情况也是如此。
就我个人而言,我会考虑以某种方式将声明分解成几部分。
,你可以:
除了给你的数据库一个心脏癫痫发作之外,当他看到SQL监视器中的语句时不提及DBA。如果你再次看到这个陈述,那么你正在拯救自己一个痛苦的世界。
我认为App Engines中的SQL存储为long,所以在Oracle下是4GB,在DB2下是类似的。