Share via


Parameterdatentypen

Obwohl jeder mit SQLBindParameter angegebene Parameter mithilfe eines SQL-Datentyps definiert wird, weisen die Parameter in einer SQL-Anweisung keinen systeminternen Datentyp auf. Daher können Parametermarker nur dann in eine SQL-Anweisung aufgenommen werden, wenn ihre Datentypen von einem anderen Operanden in der Anweisung abgeleitet werden können. Beispielsweise in einem arithmetischen Ausdruck wie ? + COLUMN1, der Datentyp des Parameters kann aus dem Datentyp der benannten Spalte abgeleitet werden, die durch COLUMN1 dargestellt wird. Eine Anwendung kann keinen Parametermarker verwenden, wenn der Datentyp nicht bestimmt werden kann.

In der folgenden Tabelle wird beschrieben, wie ein Datentyp für mehrere Typen von Parametern gemäß SQL-92 bestimmt wird. Eine umfassendere Spezifikation zum Rückschluss auf den Parametertyp bei Verwendung anderer SQL-Klauseln finden Sie in der SQL-92-Spezifikation.

Speicherort des Parameters Angenommener Datentyp
Ein Operand einer binären Arithmetik oder eines Vergleichsoperators Identisch mit dem anderen Operanden
Der erste Operand in einer BETWEEN-Klausel Identisch mit dem zweiten Operanden
Der zweite oder dritte Operand in einer BETWEEN-Klausel Identisch mit dem ersten Operanden
Ein Ausdruck, der mit IN verwendet wird Identisch mit dem ersten Wert oder der Ergebnisspalte der Unterabfrage
Ein wert, der mit IN verwendet wird Identisch mit dem Ausdruck oder dem ersten Wert, wenn im Ausdruck ein Parametermarker vorhanden ist
Ein mit LIKE verwendeter Musterwert VARCHAR
Ein mit UPDATE verwendeter Updatewert Identisch mit der Updatespalte