sqlite.h


Nombres de columna en un conjunto de resultados

const char *sqlite3_column_name(sqlite3_stmt*, int N);
const void *sqlite3_column_name16(sqlite3_stmt*, int N);

Estas funciones retornan el nombre asignado a una columna en particular den un conjunto de resultados de una sentencia SELECT. La función sqlite3_column_name() devuelve un puntero a una cadena UTF-8 terminada en cero y sqlite3_column_name16() retorna un puntero a una cadena UTF-16 terminada en cero. El primer parámetro es la sentencia preparada que implementa a la sentencia SELECT. El segundo parámetro es el número de columna. La columna más a la izquierda es la número 0.

El puntero de cadena devuelto es válido hasta que la sentencia preparada sea destruída mediante sqlite3_finalize() o hasta qeu la sentencia sea automáticamente reelaborada por la primera llamada a sqlite3_step() para una ejecución en particular o hasta la siguente llamada a sqlite3_column_name() o sqlite3_column_name16() para la misma columna.

Si sqlite3_malloc() falla durante el proceso de cualquiera de estas funciones (por ejemplo durante una conversión de UTF-8 a UTF-16) entonces de devuelve un puntero NULL.

El nombre de una columna de resultado es el valor de la cláusula AS para esa columna, si existe una cláusula AS. Si no existe esa cláusula entonces el nombre de la columna está sin especificar y puede cambiar de una versión de SQLite a la siguiente.