DECLARE GLOBAL TEMPORARY TABLE Vs CREATE GLOBAL TEMPORARY TABLE in DB2

erstelle eineGLOBAL TEMPORARY TABLE in DB2. und als ich gesurft habe, gab es zwei Möglichkeiten zum Erstellen: 1. Deklarieren 2. Erstellen.

1. DECLARE GLOBAL TEMPORARY TABLE SESSION.TEMP_EMP
      (EMPNO  CHAR(6) NOT NULL,
       SALARY DECIMAL(9, 2),
       BONUS  DECIMAL(9, 2),
       COMM   DECIMAL(9, 2)) WITH REPLACE ON COMMIT PRESERVE ROWS ;

2. CREATE GLOBAL TEMPORARY TABLE TMPDEPT
      (TMPDEPTNO   CHAR(3)      NOT NULL,
       TMPDEPTNAME VARCHAR(36)  NOT NULL,
       TMPMGRNO    CHAR(6),
       TMPLOCATION CHAR(16) ) ON COMMIT PRESERVE ROWS ;

Und von der IBM-Site habe ich eine Information erhalten, die das Beste ist, da sie beständig ist. Alle Benutzersitzungen können auf dieselbe Tabellendefinition zugreifen, ohne sie beim Start deklarieren zu müssen, und viele weitere Vorteile.

Verknüpfung :http://www.ibm.com/developerworks/data/library/techarticle/dm-0912globaltemptable/

und ich hatte einige Fragen bei der Verwendung von create over declare:

Ich konnte das nicht findenReplace Schlüsselwort während der VerwendungCREATE GLOBAL TEMPORARY TABLE .

Stellen Sie sich ein Szenario vor: Öffnen Sie eine Verbindung und führen Sie eine gespeicherte Prozedur aus.
In dieser gespeicherten Prozedur wird eine globale temporäre Tabelle erstellt, und in dieser gespeicherten Prozedur wird eine andere gespeicherte Prozedur aufgerufen, die erneut Folgendes aufweistsame Erstellen Sie eine temporäre Tabellenanweisung. Was passiert in diesem Fall. Gibt es einen Fehler aus, da beide Tabellennamen gleich sind und sich innerhalb der einzelnen Verbindung befinden?

Deklarieren Sie haben Sitzung und erstellen hat nicht? hat das mit persistieren zu tun ??

Was ist leistungsmäßig besser? Temp deklarieren oder Temp erstellen?

Schlagen Sie einige Szenarien für die beste Verwendung von declare / create vor !!

Antworten auf die Frage(2)

Ihre Antwort auf die Frage