Spec-Zone.ru › SQLite

Объявленный тип данных результата запроса

const char *sqlite3_column_decltype(sqlite3_stmt*,int);
const void *sqlite3_column_decltype16(sqlite3_stmt*,int);

Первый параметр — это подготовленное утверждение. Если это утверждение — запрос SELECT, и N-й столбец возвращаемого набора результатов этого запроса SELECT является столбцом таблицы (а не выражением или подзапросом), то возвращается объявленный тип столбца таблицы. Если N-й столбец набора результатов является выражением или подзапросом, возвращается указатель NULL. Возвращаемая строка всегда закодирована в UTF-8.

Например, при следующей схеме базы данных:

CREATE TABLE t1(c1 VARIANT);

и следующем утверждении для компиляции:

SELECT c1 + 1, c1 FROM t1;

эта процедура вернёт строку «VARIANT» для второго столбца результатов (i==1) и указатель NULL для первого столбца результатов (i==0).

SQLite использует динамическую типизацию во время выполнения. Поэтому то, что столбец объявлен как содержащий определённый тип, не означает, что данные, хранящиеся в этом столбце, имеют объявленный тип. SQLite — строго типизированная система, но типизация динамическая, а не статическая. Тип связан с отдельными значениями, а не с контейнерами, используемыми для хранения этих значений.

См. также списки объектов, констант и функций.

SQLite is in the Public Domain.
https://sqlite.org/c3ref/column_decltype.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API