Compartilhar via


Tipos de dados do parâmetro

Embora cada parâmetro especificado com SQLBindParameter seja definido usando um tipo de dados SQL, os parâmetros em uma instrução SQL não têm nenhum tipo de dados intrínseco. Portanto, os marcadores de parâmetro só poderão ser incluídos em uma instrução SQL se seus tipos de dados puderem ser inferidos de outro operando na instrução . Por exemplo, em uma expressão aritmética como ? + COLUMN1, o tipo de dados do parâmetro pode ser inferido do tipo de dados da coluna nomeada representada por COLUMN1. Um aplicativo não poderá usar um marcador de parâmetro se o tipo de dados não puder ser determinado.

A tabela a seguir descreve como um tipo de dados é determinado para vários tipos de parâmetros, de acordo com o SQL-92. Para obter uma especificação mais abrangente sobre como inferir o tipo de parâmetro quando outras cláusulas SQL forem usadas, consulte a especificação SQL-92.

Local do parâmetro Tipo de dados presumido
Um operando de um operador aritmético ou de comparação binário O mesmo que o outro operando
O primeiro operando em uma cláusula BETWEEN O mesmo que o segundo operando
O segundo ou terceiro operando em uma cláusula BETWEEN O mesmo que o primeiro operando
Uma expressão usada com IN O mesmo que o primeiro valor ou a coluna de resultado da subconsulta
Um valor usado com IN O mesmo que a expressão ou o primeiro valor se houver um marcador de parâmetro na expressão
Um valor padrão usado com LIKE VARCHAR
Um valor de atualização usado com UPDATE O mesmo que a coluna de atualização