﻿<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>StrataFrame Forum » StrataFrame Application Framework - V1 » Issues  » Oracle Global Temporary Table Trouble</title><generator>InstantForum 2017-1 Final</generator><description>StrataFrame Forum</description><link>http://forum.strataframe.net/</link><webMaster>StrataFrame Forum</webMaster><lastBuildDate>Fri, 22 May 2026 11:27:30 GMT</lastBuildDate><ttl>20</ttl><item><title>Oracle Global Temporary Table Trouble</title><link>http://forum.strataframe.net/FindPost29450.aspx</link><description>I have a BO that uses a FillByStoredProcedure. &amp;nbsp;The underlying Oracle procedure uses an Oracle Global Temporary Table (GTT) with the option of "ON COMMIT DELETE ROWS". &amp;nbsp;The Oracle proc is performing OK, but no rows are returned to the BO.&lt;br/&gt;&lt;br/&gt;&lt;div&gt;If I change to use the GTT option of "ON COMMIT PRESERVE ROWS", the FillByStoredProcedure works as expected. &amp;nbsp;(I'm not issuing any COMMITs or DDL expressions in my code.)&lt;br/&gt;&lt;br/&gt;&lt;div&gt;I've seen the same problem with queries that use Oracle's "subquery_factoring_clause" (i.e., a "WITH qname AS (subquery)"). &amp;nbsp;If the Oracle optimizer chooses to materialize the subquery (i.e., create a GTT for the subquery), then no results are returned to the BO. &amp;nbsp;However, in this case, there is no way to set the subquery's GTT to use "ON COMMIT PRESERVE ROWS".&lt;br/&gt;&lt;br/&gt;&lt;div&gt;Any help is appreciated.&lt;div&gt;TIA</description><pubDate>Thu, 27 Jan 2011 06:50:57 GMT</pubDate><dc:creator>Kirk M Sherhart</dc:creator></item><item><title>RE: Oracle Global Temporary Table Trouble</title><link>http://forum.strataframe.net/FindPost29461.aspx</link><description>Thanks, Trent. &amp;nbsp;But I get the same behavior.</description><pubDate>Thu, 27 Jan 2011 06:50:57 GMT</pubDate><dc:creator>Kirk M Sherhart</dc:creator></item><item><title>RE: Oracle Global Temporary Table Trouble</title><link>http://forum.strataframe.net/FindPost29459.aspx</link><description>Instead of using the FillByStoredProcedure, use the FillDataTable command and set the command type on DbCommand.&amp;nbsp; I will use the SqlCommand since I am not sure what Oracle object you are using:&lt;br/&gt;&lt;br/&gt;&lt;span&gt;[codesnippet]SqlCommand cmd = new SqlCommand("dbo.MySproc");&lt;br/&gt;&lt;br/&gt;//-- This will ensure that the command is treated as a SPROC &lt;br/&gt;cmd.CommandType = CommandType.StoredProcedure;&lt;br/&gt;&lt;br/&gt;//-- Set any parms&lt;br/&gt;cmd.Parameters.Add("@Parm1", SqlDbType.Integer).Value = MyValue;&lt;br/&gt;&lt;br/&gt;//-- Execute the query &lt;br/&gt;this.FillDataTable(cmd);[/codesnippet]&lt;/span&gt;</description><pubDate>Thu, 27 Jan 2011 06:22:45 GMT</pubDate><dc:creator>Trent L. Taylor</dc:creator></item></channel></rss>