Compartir a través de


Apéndice E: Funciones escalares

ODBC especifica los siguientes tipos de funciones escalares, con información detallada sobre cada uno de estos tipos de función proporcionados en las secciones correspondientes de este apéndice. Las descripciones de la función incluyen la sintaxis asociada.

Este apéndice contiene los temas siguientes.

ODBC no exige un tipo de datos para los valores devueltos de las funciones escalares porque las funciones suelen ser específicas del origen de datos. Las aplicaciones deben usar la función escalar CONVERT siempre que sea posible para forzar la conversión de tipos de datos.

Funciones escalares ODBC y SQL-92

Las tablas de este apéndice incluyen funciones que se han agregado en ODBC 3.0 para alinearse con SQL-92. Esas funciones agregadas para un tipo determinado de función escalar, tal como se define en ODBC, se indican en cada sección.

ODBC y SQL-92 clasifican sus funciones escalares de forma diferente. ODBC clasifica las funciones escalares por tipo de argumento; SQL-92 los clasifica por valor devuelto. Por ejemplo, ODBC clasifica la función EXTRACT como una función timedate, porque el argumento extract-field es una palabra clave datetime y el argumento extract-source es una expresión datetime o interval. SQL-92, por otro lado, clasifica EXTRACT como una función escalar numérica, ya que el valor devuelto es numérico.

Una aplicación puede determinar qué funciones escalares admite un controlador mediante una llamada a SQLGetInfo. Los tipos de información se incluyen tanto para ODBC como para las clasificaciones SQL-92 de las funciones escalares. Dado que estas clasificaciones son diferentes, la compatibilidad con algunas funciones escalares puede indicarse en tipos de información que no corresponden a ODBC y SQL-92. Por ejemplo, la compatibilidad con EXTRACT en ODBC se indica mediante el tipo de información SQL_TIMEDATE_FUNCTIONS; La compatibilidad con EXTRACT en SQL-92, por otro lado, se indica mediante el tipo de información SQL_SQL92_NUMERIC_VALUE_FUNCTIONS.