BEGIN DECLARE SECTION Anweisung

Die BEGIN DECLARE SECTION-Anweisung markiert den Beginn eines SQL-Deklarationsabschnitts. Ein SQL-Deklarationsabschnitt enthält Deklarationen von Host-Variablen, die als Host-Variablen in SQL-Anweisungen in einem Programm verwendet werden können.

Aufruf für BEGIN DECLARE SECTION

Diese Anweisung kann nur in ein Anwendungsprogramm eingebettet werden. Es handelt sich nicht um eine ausführbare Anweisung. Es darf nicht in Java™ oder REXX angegeben werden.

Berechtigung für BEGIN DECLARE SECTION

Es ist keine Berechtigung erforderlich.

Syntax für BEGIN DECLARE SECTION

Syntaxdiagramm lesenÜberspringe das visuelle SyntaxdiagrammBEGIN DECLARE SECTION

Beschreibung für BEGIN DECLARE SECTION

Die BEGIN DECLARE SECTION-Anweisung kann im Anwendungsprogramm an jeder Stelle codiert werden, an der Variablendeklarationen gemäß den Regeln der Host-Sprache erscheinen können. Es wird verwendet, um den Beginn eines Abschnitts zur Deklaration einer Host-Variablen anzuzeigen. Ein Hostvariablenabschnitt endet mit einer END DECLARE SECTION-Anweisung, die in END DECLARE SECTION-Anweisung beschrieben wird.

Die folgenden Regeln werden vom Precompiler nur durchgesetzt, wenn die Hostsprache C ist oder die SQL-Verarbeitungsoption STDSQL(YES) angegeben ist:

  • Eine Variable, auf die in einer SQL-Anweisung Bezug genommen wird, muss in allen Host-Sprachen außer Java und REXX in einem Abschnitt zur Host-Variablendeklaration des Quellprogramms deklariert werden. Außerdem muss die Deklaration jeder Variablen vor der ersten Referenz auf die Variable erfolgen. Host-Variablen werden in Java ohne diese Anweisungen deklariert und in REXX überhaupt nicht.
  • Die Anweisungen "BEGIN DECLARE SECTION" und "END DECLARE SECTION" müssen paarweise auftreten und dürfen nicht verschachtelt werden.
  • Abschnitte zur Deklaration von Host-Variablen können nur Host-Variablendeklarationen, SQL-INCLUDE-Anweisungen, die Host-Variablendeklarationen enthalten, oder DECLARE VARIABLE-Anweisungen enthalten.

Hinweise für BEGIN DECLARE SECTION

Abschnitte zur Deklaration von Hostvariablen sind nur erforderlich, wenn die Option STDSQL(YES) angegeben ist oder die Hostsprache C ist. Es können jedoch für jede Host-Sprache Deklarationsabschnitte festgelegt werden, sodass das Quellprogramm mit IBM® SQL kompatibel ist. Wenn "declare"-Abschnitte verwendet werden, aber nicht erforderlich sind, dürfen Variablen, die außerhalb eines "declare"-Abschnitts deklariert werden, nicht den gleichen Namen haben wie Variablen, die innerhalb eines "declare"-Abschnitts deklariert werden.

Wenn Sie Db2 precompiler verwenden, stellen Sie sicher, dass die Namen von Host-Variablen und Host-Variablen-Arrays innerhalb des Programms eindeutig sind, auch wenn sich die Variablen und Variablen-Arrays in verschiedenen Blöcken, Klassen, Prozeduren, Funktionen oder Unterprogrammen befinden. Sie können die Namen mit einem Strukturnamen versehen, um sie eindeutig zu machen.

Beispiel für BEGIN DECLARE SECTION

  EXEC SQL BEGIN DECLARE SECTION;
 
   -- host variable declarations
 
  EXEC SQL END DECLARE SECTION;