DB2 Apostroph und Hochkomma

Verwendung von Apostroph und Hochkomma in DB2 for z/OS Programmen

DB2 Installation

Die grundsätzlichen Defaults für die Verwendung von High Level Language Delimiter und SQL Statement Delimiter werden während der DB2 Installation festegelegt und bilden schließlich das DB2 Load Module DSNHDECP.

  • String Delimiter:
    Option 17 auf Panel DSNTIPB
    Feld DELIM in  DSNHDECP
    Mögliche Werte:
    • Default = Quotation Mark
      " = Quotation Mark
      ' = Apostroph
  • SQL String Delimiter
    Feld SQLDELI in  DSNHDECP
    Mögliche Werte:
    • Default = Quotation Mark
      " = Quotation Mark
      ' = Apostroph
  • SQL String Delimiter Distributed Access
    Feld DSQLDELI in  DSNHDECP
    Mögliche Werte:
    ' = Apostroph (Default)
    " = Quotation Mark

Die Auswirkungen bei unterschiedlicher Besetzung der DSNHDECP-Felder ...

DELIM

SQLDELIM

Cobol

Dynamic SQL

Embedded SQL

DEFAULT

DEFAULT

"

'

"

'

'

'

'

'

"

"

"

"

"

"

'

"

'

'

DB2 Precompiler Einstellungen

Precompiler Option

Auswirkungen

APOST

Erkennt das Aprostroph ( ' ) als String Delimiter innerhalb der Host Language Statements.

APOST und QUOTE schließen sich gegenseitig aus.

APOSTSQL

Erkennt das Aprostroph ( ' ) als String Delimiter innerhalb der Host Language Statements und das Quotation Mark ( " ) und SQL Escape Character innerhalb von SQL Statements.

APOSTSQL und QUOTESQL schließen sich gegenseitig aus.

QUOTE

Erkennt das Quotation Mark/Doppelhochkomma ( " ) als String Delimiter innerhalb der Host Language Statements.

APOST und QUOTE schließen sich gegenseitig aus.

QUOTESQL

Erkennt das Quotation Mark/Doppelhochkomma ( " ) als String Delimiter innerhalb der Host Language Statements und das Aprostroph ( ' ) und SQL Escape Character innerhalb von SQL Statements.

APOSTSQL und QUOTESQL schließen sich gegenseitig aus.

Die DB2 Precompiler Angaben sind natürlich unwirksam, wenn der DB2 Coprocessor des Cobol oder PL/I Compilers das Source Programm umwandelt.

DB2 Precompiler Default Optionen
(teilweise keine abweichenden Options möglich)

Assembler

APOST, APOSTSQL, PERIOD, TWOPASS, MARGINS(1,71,16)

C und C++

APOST, APOSTSQL, PERIOD, ONEPASS, MARGINS(1,72)

Cobol

QUOTE, QUOTESQL, PERIOD, ONEPASS, MARGINS(8,72)

Fortran

APOST, APOSTSQL, PERIOD, ONEPASS, MARGINS(1,72)

PL/I

APOST, APOSTSQL, PERIOD, ONEPASS, MARGINS(2,72)

Enterprise Cobol  Compiler Einstellungen

Aktivierung des DB2 Coprocessors erfolgt mit Angabe der Compiler Option SQL. Aus sicht von DB2 wird das Coprocessor Feature als „SQL statement coprocessor by DB2“ bezeichnet.

Angabe unter ...

//STEP1 EXEC PGM=IGYCRCTL,...
//   PARM='SQL("option option")'

Cobol Compiler Einstellungen

QUOTE

Erkennt das Quotation Mark/Doppelhochkomma ( " ) als String Delimiter

APOST

Erkennt das Aprostroph ( ' ) als String Delimiter

© Gernot Ruban