我有一个报告,每天生成一个excel文件,其中包含从MS-SQL数据库中提取的数据。我现在必须从Oracle数据库向我的电子表格添加其他列,其中ID与MS-SQL查询结果中的ID匹配。
我的问题是,我在第一次查询时在此报告上生成了大约1200-1400个唯一ID。当我使用Oracle查询将它们插入IN列表并尝试执行CFDUMP以查看结果是否应该出现时,我收到一条CF错误,指出查询无法列出来自oracle查询的1000多个结果。 / p>
我基本上将第一个查询的值设置为ID列的值列表,然后将其放入Oracle查询的IN子句中。然后我在Oracle上做了一个cfdump,我收到了这个错误。我还尝试过包装cfloop query =" firstquery">围绕Oracle查询并放置#firstquery.columnIDname#但这也不起作用。
我在这里有两个问题是......
如何使用1k限制处理Oracle的限制,如果我只使用ColdFusion只读访Oracle数据库?
在计算出#1之后,如何将Oracle Query的结果与我的MSSQL查询结合起来,换句话说,将我从Oracle查询中提取的列添加到电子表格中匹配ID。
感谢。
答案 0 :(得分:0)
对于快速,肮脏和次优的方法,请访问cflib.org并查找名为ListSplit()的函数。它将长列表转换为短列表数组。
然后循环遍历此数组并每次运行查询。确保查询名称随每次循环迭代而变化。
循环之后,执行查询联合查询的查询。然后做你需要做的任何事情来将这些数据与你从sql server获得的数据结合起来。
请注意,您可能必须使用数组表示法来访问动态命名的查询对象。