Tipi di dati parametro

Anche se ogni parametro specificato con SQLBindParameter viene definito usando un tipo di dati SQL, i parametri in un'istruzione SQL non hanno alcun tipo di dati intrinseco. Pertanto, i marcatori di parametro possono essere inclusi in un'istruzione SQL solo se i relativi tipi di dati possono essere dedotti da un altro operando nell'istruzione . Ad esempio, in un'espressione aritmetica, ad esempio ? + COLUMN1, il tipo di dati del parametro può essere dedotto dal tipo di dati della colonna denominata rappresentata da COLUMN1. Un'applicazione non può usare un marcatore di parametro se non è possibile determinare il tipo di dati.

La tabella seguente descrive come viene determinato un tipo di dati per diversi tipi di parametri, in base a SQL-92. Per una specifica più completa sull'inferenza del tipo di parametro quando vengono usate altre clausole SQL, vedere la specifica SQL-92.

Posizione del parametro Tipo di dati assunto
Un operando di un operatore aritmetico o di confronto binario Uguale all'altro operando
Primo operando in una clausola BETWEEN Uguale al secondo operando
Secondo o terzo operando in una clausola BETWEEN Uguale al primo operando
Espressione utilizzata con IN Uguale al primo valore o alla colonna risultato della sottoquery
Valore utilizzato con IN Uguale all'espressione o al primo valore se è presente un marcatore di parametro nell'espressione
Valore del criterio usato con LIKE VARCHAR
Valore di aggiornamento usato con UPDATE Uguale alla colonna di aggiornamento