Spec-Zone.ru › SQLite

Список виртуальных таблиц

Оглавление
1. Введение
2. Виртуальные таблицы

1. Введение

Виртуальная таблица — это объект, представляющий интерфейс SQL-таблицы, но не хранящийся в файле базы данных, по крайней мере, не напрямую. Механизм виртуальных таблиц — это функция SQLite, которая позволяет SQLite обращаться к ресурсам, отличным от данных в файле базы данных, и обрабатывать их с помощью мощного языка запросов SQL.

В таблице ниже приведены некоторые реализации виртуальных таблиц, доступных для SQLite. Разработчики могут использовать эти виртуальные таблицы в своих приложениях или использовать приведенные ниже реализации в качестве шаблонов для создания собственных виртуальных таблиц.

Этот список не является исчерпывающим. Другие реализации виртуальных таблиц существуют в дереве исходных кодов SQLite и в других местах. В приведенном ниже списке представлены наиболее интересные реализации виртуальных таблиц.

2. Виртуальные таблицы

Имя Описание
approximate_match Демонстрация использования виртуальной таблицы для реализации приближенного сопоставления строк.
bytecode Функция, возвращающая таблицу, которая показывает байт-код подготовленного оператора.
carray Функция, возвращающая таблицу, которая позволяет использовать массив значений языка C (целые числа, двойные или строки) в качестве таблицы в запросе.
closure Вычисление транзитивного замыкания множества.
completion Предлагает варианты завершения частично введённых слов во время интерактивного ввода SQL. Используется в командной строке (CLI) для реализации автодополнения.
csv Виртуальная таблица, представляющая файл с разделителями (CSV) (RFC 4180) как таблицу только для чтения, чтобы её можно было использовать в рамках более крупного запроса.
dbstat Предоставляет информацию о назначении и использовании каждой страницы в файле базы данных. Используется в реализации утилиты sqlite3_analyzer.
files_of_checkin Предоставляет информацию обо всех файлах в одном коммите системы управления версиями Fossil. Эта виртуальная таблица не является частью проекта SQLite, но включена в список, потому что она демонстрирует, как использовать виртуальные таблицы, и потому что она используется для управления версиями исходных кодов SQLite.
fsdir Функция, возвращающая таблицу, которая возвращает одну строку для каждого файла в выбранной иерархии файлов на компьютере-хосте. Используется в командной строке (CLI) для реализации команды .archive.
FTS3 Высокопроизводительный индекс полнотекстового поиска.
FTS5 Более высокопроизводительный индекс полнотекстового поиска
generate_series Функция, возвращающая таблицу, возвращающая последовательность целых чисел, аналогичную одноимённой функции в PostgreSQL.
json_each Функция, возвращающая таблицу, для разложения JSON-строки.
json_tree Функция, возвращающая таблицу, для разложения JSON-строки.
OsQuery Сотни виртуальных таблиц, публикующих различные аспекты компьютера-хоста, такие как таблица процессов, список пользователей, активные сетевые подключения и так далее. OsQuery — отдельный проект, начатый Facebook, размещённый на GitHub, и предназначенный для анализа безопасности и обнаружения вторжений. OsQuery не входит в проект SQLite, но включён в этот список, так как демонстрирует, как язык SQL и механизм виртуальных таблиц SQLite могут быть эффективно использованы для решения важных проблем реального мира.
pragma Встроенные функции, возвращающие результаты операторов PRAGMA для использования в обычных SQL-запросах.
RTree Реализация идеи пространственного индекса R*Tree Гуттмана.
spellfix1 Виртуальная таблица, реализующая движок исправления орфографических ошибок.
sqlite_btreeinfo Эта экспериментальная функция, возвращающая таблицу, предоставляет информацию о единственном B-дереве в файле базы данных, например, глубину, приблизительное количество страниц и количество записей и так далее.
sqlite_dbpage Хранилище ключ/значение для содержимого исходного файла базы данных. Ключ — номер страницы, значение — двоичное содержимое страницы.
sqlite_memstat Предоставляет SQL-доступ к интерфейсам sqlite3_status64() и sqlite3_db_status().
sqlite_stmt Функция, возвращающая таблицу, содержащую одну строку для каждого подготовленного оператора, связанного с открытым подключением к базе данных.
swarmvtab Экспериментальный модуль, предоставляющий по требованию доступ для чтения к нескольким таблицам, распределённым по нескольким базам данных, через единую абстракцию виртуальной таблицы.
tables_used Функция, возвращающая таблицу, которая показывает таблицы и индексы, используемые подготовленным оператором.
tclvar Представляет глобальные переменные интерпретатора TCL в виде SQL-таблицы. Используется в рамках набора тестов SQLite.
templatevtab Шаблонная реализация виртуальной таблицы, полезная как отправная точка для разработчиков, желающих создать свои виртуальные таблицы.
unionvtab Экспериментальный модуль, предоставляющий по требованию доступ для чтения к нескольким таблицам, распределённым по нескольким базам данных, через единую абстракцию виртуальной таблицы.
vfsstat Функция, возвращающая таблицу, которая в сочетании с сопрограммным модулем VFS shim предоставляет информацию о количестве системных вызовов, выполненных SQLite.
vtablog Виртуальная таблица, которая выводит диагностическую информацию в stdout, когда вызываются её ключевые методы. Предназначена для интерактивного анализа и отладки интерфейсов виртуальных таблиц.
wholenumber Виртуальная таблица возвращает все целые числа от 1 до 4294967295.
zipfile Представляет архив ZIP как SQL-таблицу. Работает как для чтения, так и для записи. Используется в командной строке (CLI) для реализации возможности чтения и записи архивов ZIP.

Последнее изменение этой страницы: 01.05.2023 21:49:55 UTC

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

Spec-Zone.ru

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