Tipos de datos de parámetro

Aunque cada parámetro especificado con SQLBindParameter se define mediante un tipo de datos SQL, los parámetros de una instrucción SQL no tienen ningún tipo de datos intrínseco. Por lo tanto, los marcadores de parámetro solo se pueden incluir en una instrucción SQL si sus tipos de datos se pueden deducir de otro operando de la instrucción . Por ejemplo, en una expresión aritmética como ? + COLUMN1, el tipo de datos del parámetro se puede deducir del tipo de datos de la columna con nombre representada por COLUMN1. Una aplicación no puede usar un marcador de parámetro si no se puede determinar el tipo de datos.

En la tabla siguiente se describe cómo se determina un tipo de datos para varios tipos de parámetros, de acuerdo con SQL-92. Para obtener una especificación más completa sobre la inferencia del tipo de parámetro cuando se usan otras cláusulas SQL, consulte la especificación SQL-92.

Ubicación del parámetro Tipo de datos asumido
Un operando de un operador aritmético binario o de comparación Igual que el otro operando
Primer operando de una cláusula BETWEEN Igual que el segundo operando
Segundo o tercer operando de una cláusula BETWEEN Igual que el primer operando
Expresión usada con IN Igual que el primer valor o la columna de resultado de la subconsulta
Valor utilizado con IN Igual que la expresión o el primer valor si hay un marcador de parámetro en la expresión
Valor de patrón usado con LIKE VARCHAR
Valor de actualización usado con UPDATE Igual que la columna de actualización