Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: Global Temp Table (PRESERVE ROWS) truncating unexpectedly

Re: Global Temp Table (PRESERVE ROWS) truncating unexpectedly

From: Marc Blum <blum_at_marcblum.de>
Date: Thu, 27 Sep 2007 21:47:13 +0200
Message-ID: <7p1of39ifbodkllg7b25ov38ihc5ocnmvo@4ax.com>


On Sat, 22 Sep 2007 19:16:51 -0700, "pmmgpgp_at_gmail.com" <pmmgpgp_at_gmail.com> wrote:

>My IDE is pl/sql developer version 7.1.2 and is configured for
>"Dual Sessions".

from the PL/SQL-Developer Handbook:

Windows, database sessions and transactions

PL/SQL Developer provides a multi session / multi threading environment. Multi session means that even though you logon only once in PL/SQL Developer, separate database sessions can be used for the Test Windows, SQL Windows and Command Windows. Moreover, program unit compilations will also occur in a separate database session. After all, a compilation is a DDL statement and implicitly commits the current transaction. This could lead to unwanted effects if it shared the same session with other windows.

Multi threading means that execution of Test Windows, SQL Windows and Command Windows can run simultaneously, without blocking each other. The advantage of this is that you can continue doing other work while long running SQL statements are executing, that you can break or kill a session, that you can test locking behavior of your program units, and so on.

Session mode

Multi threading implies that you need a multi session environment. After all, the Oracle Server can only execute one statement at a time for any given database session. Things can only run simultaneously if they run in different sessions. Not all development environments allow for an unlimited amount of sessions, so that a preference can be set (see chapter 13.1) that controls the amount of sessions that PL/SQL Developer will use. This preference is called the Session mode, and can have one of the following values:

Multi session - Each Test Window, SQL Window and Command Window will have its own session, and another session will be used for compilations. This is the most flexible setting, and will obviously lead to the largest amount of database sessions. Another possible disadvantage is that updates in Window X will only be visible in Window Y after they are committed.

Dual session - The Test Windows, SQL Windows and Command Windows will share one session, and another session will be used for compilations. Disadvantage of this mode is that only one window can execute at a time.

Single session - All windows and all compilations use the same session, making transaction management difficult. The debugger is disabled in this mode. Only use this setting if you are restricted to using one database session. Received on Thu Sep 27 2007 - 14:47:13 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US