Um die Parameterersetzung problemlos auch für Teile von SQL-Statements einsetzen zu können, ohne durch die Syntaxprüfung behindert zu werden, sind mehrere spezielle Parameterschreibweisen nötig. Ebenso besteht Bedarf für besondere Parameterschreibweisen, um passendes Quoting auf die Inhalte anzuwenden.

Stellvertretend  für die Parameter @0-@9 wird im weiteren @x verwendet.

  • Einfache Ersetzung

Der Parameter wird durch den bereitgestellten Inhalt ersetzt.

@x : Normalfall

„@x“ : Hilft z.B. bei Spaltenlisten

@x==@x : Bei bedingten Ausdrücken, z.B. On-Clause, Where-Clause

/*@x*/ : Für komplette Zeilen außerhalb eines SQL-Befehls

 

  • Zeichenkettenersetzung

Zeichenketten sollen korrekt „gequoted“ (Single Quote = einfaches Anführungszeichen) dargestellt werden.

Innerhalb der Zeichenkette befindliche Single Quotes müssen verdoppelt werden.

‚@x‘ : normale Zeichenkette

 

  • Objektnamenersetzung

Wenn gequotete Objekt - oder auch Spaltennamen eingesetzt werden sollen, ist vorher zu prüfen, ob diese bereits korrekt „gequoted“ (Square Brackets = eckige Klammern) sind.

Falls innerhalb des Objektnamens die schließende eckige Klammer vorkommt, muss diese verdoppelt werden.

[@x] : normaler Objektname

[@x].[@x] : mehrteiliger Objektname. Dieser wird erst in seine (bis zu vier) Bestandteile zerlegt, dann werden diese gequoted und danach mit Punkt getrennt wieder zusammengefügt.

 

  • Keine Ersetzung

Wenn der eigentliche Parameter erhalten bleiben und keiner Ersetzung unterzogen werden soll (z.B. für verschachtelte Templates), so können folgende Varianten eingesetzt werden:

““@x““ -> @x

“‘@x‘“ -> @x

“[@x]“ -> [@x]

Last edited Feb 24, 2011 at 11:16 AM by HenrikBauer, version 1

Comments

No comments yet.