![]() |
|
|||
WebMoney: WMZ Z294115950220 WMR R409981405661 WME E134003968233 |
Visa 4274 3200 2453 6495 |
Виртуальная таблица это
объект, который представляет интерфейс таблицы
SQL, но который не сохранен в файле базы данных, по крайней мере
не непосредственно. Виртуальный механизм таблицы это особенность SQLite,
который позволяет SQLite получать доступ и управлять ресурсами кроме битов в
файле базы данных, используя сильный язык SQL-запроса. Таблица ниже приводит несколько виртуальных внедрений, доступных для
SQLite. Разработчики могут развернуть эти виртуальные таблицы в своих
собственных приложениях или использовать внедрения, показанные ниже как
шаблоны для написания собственных виртуальных таблиц. Список ниже не исчерпывающий. Другое виртуальное внедрение
существует в исходном дереве SQLite и в другом месте. Список ниже пытается
охватить наиболее интересные внедрения виртуальных таблиц.
Choose any three.
1. Введение
2. Виртуальные таблицы
Имя Описание
approximate_match
Демонстрация того, как использовать виртуальную таблицу, чтобы
осуществить приблизительное соответствие последовательности.
bytecode
Табличная функция, которая показывает
bytecode подготовленного запроса.
carray
Табличная функция, которая позволяет
множество языка C целых чисел, double или string, чтобы использовать в
качестве таблицы в запросе.
closure
Вычислите переходное закрытие набора.
completion
Предлагает завершения для частично введенных слов во время
интерактивного ввода SQL. Используется CLI,
чтобы помочь осуществить tab-завершение. csv
Виртуальная таблица, которая представляет comma-separated-value или файл
CSV (RFC 4180)
как таблицу read-only, чтобы это могло использоваться в качестве
части большего запроса.
dbstat
Предоставляет информацию о цели и использовании каждой страницы в файле
базы данных. Используется в утилите
sqlite3_analyzer.
files_of_checkin
Предоставляет информацию обо всех файлах в единственной регистрации в
Fossil version control system.
Эта виртуальная таблица не часть проекта SQLite, но включена, потому что это
обеспечивает пример того, как использовать виртуальные таблицы и потому что
это используется, чтобы помочь управлению версиями SQLite.
fsdir
A Табличная функция возвращает одну
строку для каждого файла в отобранной файловой иерархии. Используется
CLI для реализации команды
.archive. FTS3
Высокоэффективный полнотекстовый индекс поиска.
FTS5
Высокоэффективный полнотекстовый индекс поиска.
generate_series
Табличная функция возвращает
последовательность целых чисел, смоделированных после табличной функции с
тем же самым именем в PostgreSQL.
json_each
A Табличная функция для разложения
последовательности JSON.
json_tree
A Табличная функция для разложения
последовательности JSON.
OsQuery
Сотни виртуальных таблиц, которые издают различные аспекты компьютера,
такие как таблица процессов, списки пользователей, активные сетевые
соединения и т. д. OsQuery это отдельный проект, начатый Facebook, размещен
на GitHub
и предназначен для анализа безопасности и обнаружения проникновения, OsQuery
не часть проекта SQLite, но включен в этот список, потому что это
демонстрирует, как язык SQL и виртуальный механизм таблиц
SQLite могут быть усилены, чтобы предоставить изящные решения
важных реальных проблем.
pragma
Встроенные табличные функции, которые
возвращают результаты PRAGMA
для использования в рамках обычных SQL-запросов.
RTree
Внедрение пространственного индекса Guttmann R*Tree.
spellfix1
Виртуальная таблица, которая осуществляет движок
исправления орфографических ошибок.
sqlite_btreeinfo
Эта экспериментальная табличная функция
предоставляет информацию об единственном
B-tree в файле базы данных, такую
как глубина, оцененное число страниц, количество записей и т. д.
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.