Parametergegevenstypen

Hoewel elke parameter die met SQLBindParameter wordt gespecificeerd wordt gedefinieerd met een SQL-datatype, hebben de parameters in een SQL-instructie geen intrinsiek datatype. Daarom kunnen parametermarkers alleen in een SQL-instructie worden opgenomen als hun datatypes kunnen worden afgeleid uit een andere operand in de instructie. Bijvoorbeeld, in een rekenkundige uitdrukking zoals ? + COLUMN1, kan het datatype van de parameter worden afgeleid uit het datatype van de genoemde kolom die door COLUMN1 wordt weergegeven. Een applicatie kan geen parametermarker gebruiken als het datatype niet kan worden bepaald.

De volgende tabel beschrijft hoe een datatype wordt bepaald voor verschillende typen parameters, in overeenstemming met SQL-92. Voor een meer uitgebreide specificatie over het afleiden van het parametertype wanneer andere SQL-clausules worden gebruikt, zie de SQL-92 specificatie.

Locatie van parameter Aangenomen datatype
Eén operand van een binaire rekenkundige of vergelijkingsoperator Hetzelfde als de andere operand
De eerste operand in een BETWEEN-clausule Hetzelfde als de tweede operand
De tweede of derde operand in een BETWEEN-clausule Hetzelfde als de eerste operand
Een uitdrukking die wordt gebruikt met IN Hetzelfde als de eerste waarde of de resultaatkolom van de subquery
Een waarde die wordt gebruikt met IN Hetzelfde als de uitdrukking of de eerste waarde als er een parametermarker in de expressie is
Een patroonwaarde die wordt gebruikt met LIKE VARCHAR
Een updatewaarde gebruikt met UPDATE Hetzelfde als de updatekolom