Verwenden von Anführungszeichen im Skript

Sie können Anführungszeichen in Skriptbefehlen auf verschiedene Weisen verwenden.

In LOAD-Befehlen

In einem LOAD-Befehl sollten die folgenden Symbole als Anführungszeichen verwendet werden:

  Beschreibung Symbol Codepoint Beispiel

Feldnamen

Doppelte Anführungszeichen

" " 34 "String"
  Eckige Klammern [ ] 91, 93 [String]
  Graviszeichen ` ` 96 `String`

String-Literale

Einfache Anführungszeichen

' '

39 'String'

In SELECT-Befehlen

Bei SELECT-Befehlen, die vom ODBC-Treiber interpretiert werden, kann dies möglicherweise etwas anders sein. Normalerweise sollten Sie für Feld- und Tabellennamen gerade, doppelte Anführungszeichen (Alt + 0034) verwenden und für Literale gerade, einfache Anführungszeichen (Alt + 0039), aber niemals die Graviszeichen. Einige ODBC-Treiber akzeptieren jedoch Graviszeichen nicht nur, sondern bevorzugen diese sogar. In solchen Fällen enthält der generierte SELECT-Befehl Graviszeichen.

Microsoft Access – Beispiel für Anführungszeichen

Microsoft Access ODBC Driver 3.4 (in Microsoft Access 7.0 enthalten) akzeptiert folgende Anführungszeichen beim Analysieren des SELECT-Befehls:

Feldnamen und Tabellennamen:

[ ]

" " ` `

String-Literale:

' '

Andere Datenbanken haben möglicherweise andere Konventionen.

Außerhalb von LOAD-Befehlen

Außerhalb von LOAD-Befehlen – an Stellen, an denen QlikView eine Formel erwartet – kennzeichnen doppelte Anführungszeichen eine Variablenreferenz, keine Feldreferenz. Wenn Sie doppelte Anführungszeichen verwenden, wird der eingeschlossene String als Variable interpretiert und der Wert der Variablen wird verwendet.

Feldreferenzen und Tabellenreferenzen ohne Kontext

Einige Skriptfunktionen beziehen sich auf Felder, die bereits erstellt wurden, oder in der Ausgabe eines LOAD-Befehls enthalten sind, z. B. Exists() und Peek(). Diese Feldreferenzen werden als Feldreferenzen ohne Kontext bezeichnet, im Gegensatz zu Quellenfeldreferenzen, die sich auf Felder im Kontext, d. h. in der Eingabetabelle des LOAD-Befehls, beziehen.

Feld- und Tabellenreferenzen ohne Kontext sollten als Literale angesehen werden und erfordern deshalb einfache Anführungszeichen.

Unterschied zwischen Namen und Literalen

Die folgenden Beispiele sollen den Unterschied zwischen Namen und Literalen verdeutlichen:

Beispiel:  

'Sweden' as Country

Wenn diese Formel als Teil der Feldliste in einem LOAD- oder SELECT-Befehl verwendet wird, wird der Textstring "Sweden" als Feldwert in das QlikView-Feld "Country" geladen.

Beispiel:  

"land" as Country

Wird diese Formel als Teil der Feldliste in einem LOAD- oder SELECT-Befehl verwendet, wird der Inhalt des Datenbankfelds oder der Tabellenspalte namens "land" als Feldwerte in das QlikView-Feld "Country" geladen. Das heißt, dass land als Feldreferenz angesehen wird.

Unterschied zwischen Zahlen und String-Literalen

Die folgenden Beispiele sollen den Unterschied zwischen Zahlen und String-Literalen verdeutlichen.

Beispiel:  

'12/31/96'

Wenn dieser String als Teil einer Formel verwendet wird, wird er in einem ersten Schritt als Textstring "12/31/96" interpretiert, was wiederum als Datum interpretiert werden kann, wenn das Datumsformat ‘MM/DD/YY’ lautet. In diesem Fall wird er als dualer Wert sowohl mit numerischer als auch mit Textdarstellung gespeichert.

Beispiel:  

12/31/96

Wenn dieser String als Teil einer Formel verwendet wird, wird er numerisch interpretiert als 12 geteilt durch 31 geteilt durch 96.

Verwenden von einfachen Anführungszeichen innerhalb eines Strings

Wenn Sie in einem String einfache Anführungszeichen verwenden möchten, können Sie ein zusätzliches einfaches Anführungszeichen als Escape-Zeichen nutzen.

Beispiel:  

Der String '10 O''clock News' wird als "10 O'clock News" interpretiert.