Apêndice E: Funções escalares

O ODBC especifica os seguintes tipos de funções escalares, com informações detalhadas sobre cada um desses tipos de função fornecidos nas seções correspondentes desse apêndice. As descrições da função incluem a sintaxe associada.

Esse apêndice contém os tópicos a seguir.

O ODBC não exige um tipo de dados para valores retornados de funções escalares porque as funções geralmente são específicas da fonte de dados. Os aplicativos devem usar a função escalar CONVERT sempre que possível para forçar a conversão de tipo de dados.

Funções escalares ODBC e SQL-92

As tabelas neste apêndice incluem funções que foram adicionadas no ODBC 3.0 para se alinharem ao SQL-92. Essas funções adicionadas para um tipo específico de função escalar, conforme definido em ODBC, são indicadas em cada seção.

ODBC e SQL-92 classificam suas funções escalares de forma diferente. O ODBC classifica funções escalares por tipo de argumento; O SQL-92 os classifica por valor retornado. Por exemplo, a função EXTRACT é classificada como uma função timedate pelo ODBC, pois o argumento extract-field é uma palavra-chave datetime e o argumento extract-source é uma expressão datetime ou interval. O SQL-92, por outro lado, classifica EXTRACT como uma função escalar numérica, pois o valor retornado é numérico.

Um aplicativo pode determinar quais funções escalares um driver dá suporte chamando SQLGetInfo. Os tipos de informações são incluídos para classificações ODBC e SQL-92 de funções escalares. Como essas classificações são diferentes, o suporte para algumas funções escalares pode ser indicado em tipos de informações que não correspondem a ODBC e SQL-92. Por exemplo, o suporte para EXTRACT no ODBC é indicado pelo tipo de informações SQL_TIMEDATE_FUNCTIONS; O suporte para EXTRACT no SQL-92, por outro lado, é indicado pelo tipo de informações SQL_SQL92_NUMERIC_VALUE_FUNCTIONS.