SQLite: различия между версиями
Akashi (обсуждение | вклад) мНет описания правки |
Akashi (обсуждение | вклад) мНет описания правки Метка: редактор вики-текста 2017 |
||
| (не показано 6 промежуточных версий этого же участника) | |||
| Строка 1: | Строка 1: | ||
[[Файл:Sqlite3.png| | <div style="float: right; border: 1px solid var(--border-color-base, #a2a9b1); background: #f8f9fa; | ||
'''SQLite''' — компактная встраиваемая СУБД. Исходный код библиотеки передан в общественное достояние. В 2005 году проект получил награду Google-O’Reilly Open Source Awards. | margin-bottom: .5em; | ||
margin-left: 1em; | |||
padding: .4em; | |||
float: right; | |||
clear: right; | |||
font-size: 90%; | |||
width: 23em; | |||
vertical-align: middle; | |||
text-align: left; | |||
line-height: 1.5em; | |||
border-collapse: separate; | |||
border-spacing: 2px;"> | |||
<p style="margin-bottom: 5px; padding: 0.5em; background: var(--ruwiki-background-color-blue200, #cfe3ff); font-size: 120%; text-align: center; font-weight: bold;">SQLite</p>[[Файл:SQLite370.png|центр|безрамки]] | |||
[[Файл:Sqlite3.png|центр|безрамки|280x280пкс]] | |||
{| class="wikitable" | |||
!Тип | |||
|встраиваемая СУБД | |||
|- | |||
!Разработчик | |||
|Ричард Хипп<sup>[вд]</sup> | |||
|- | |||
!Написана на | |||
|Си | |||
|- | |||
!Операционная система | |||
|кроссплатформенность | |||
|- | |||
!Первый выпуск | |||
|август 2000 | |||
|- | |||
!Последняя версия | |||
|3.46.0 (23 мая 2024) | |||
|- | |||
!Репозиторий | |||
|sqlite.org/src | |||
|- | |||
!Лицензия | |||
|Общественное достояние | |||
|- | |||
!Сайт | |||
|[https://sqlite.org/ sqlite.org] <small>(англ.)</small> | |||
|} | |||
</div> | |||
<pre style="background-color: #f8f9fa; color: #333; background-size: 25px; border-color: #f28500; padding-left: 40px; min-height: 25px;"> | |||
Внимание! Данная статья ещё не завершена. | |||
</pre> | |||
'''SQLite''' — компактная встраиваемая СУБД. Исходный код библиотеки передан в общественное достояние. В 2005 году проект получил награду Google-O’Reilly Open Source Awards. Используется во многих [[BAS]] и [[ZennoPoster|ZP]] шаблонах, например, [[Симба]] и [[Simivod Collection]]. | |||
== Устройство == | == Устройство == | ||
Слово «встраиваемый» (англ. ''embedded'') означает, что SQLite не использует парадигмы клиент-сервер, то есть движок SQLite не является отдельно работающим процессом, с которым взаимодействует программа, а представляет собой библиотеку, с которой программа компонуется, и движок становится составной частью программы. | Слово «встраиваемый» (англ. ''embedded'') означает, что SQLite не использует парадигмы клиент-сервер, то есть движок SQLite не является отдельно работающим процессом, с которым взаимодействует программа, а представляет собой библиотеку, с которой программа компонуется, и движок становится составной частью программы. | ||
Таким образом, в качестве протокола обмена используются вызовы функций (API) библиотеки SQLite. Такой подход уменьшает накладные расходы, время отклика и упрощает программу. SQLite хранит всю базу данных (включая определения, таблицы, индексы и данные) в единственном стандартном файле на том компьютере, на котором исполняется программа | Таким образом, в качестве протокола обмена используются вызовы функций (API) библиотеки SQLite. Такой подход уменьшает накладные расходы, время отклика и упрощает программу. SQLite хранит всю базу данных (включая определения, таблицы, индексы и данные) в единственном стандартном файле на том компьютере, на котором исполняется программа. | ||
Несколько процессов или потоков могут одновременно без каких-либо проблем читать данные из одной базы. Запись в базу можно осуществить только в том случае, если никаких других запросов в данный момент не обслуживается; в противном случае попытка записи оканчивается неудачей, и в программу возвращается код ошибки. Другим вариантом развития событий является автоматическое повторение попыток записи в течение заданного интервала времени. | Простота реализации достигается за счёт того, что перед началом исполнения транзакции записи весь файл, хранящий базу данных, блокируется; ACID-функции достигаются в том числе за счёт создания файла журнала. | ||
Несколько процессов или потоков могут одновременно без каких-либо проблем читать данные из одной базы. Запись в базу можно осуществить только в том случае, если никаких других запросов в данный момент не обслуживается; в противном случае попытка записи оканчивается неудачей, и в программу возвращается код ошибки. | |||
Другим вариантом развития событий является автоматическое повторение попыток записи в течение заданного интервала времени. | |||
Источник: [https://ru.wikipedia.org/wiki/SQLite Wikipedia] | Источник: [https://ru.wikipedia.org/wiki/SQLite Wikipedia] | ||
== Распространение == | |||
Сама библиотека SQLite написана на C; существует большое количество привязок к другим языкам программирования, в том числе Apple Swift, Delphi, C++, Java, Kotlin, C#, VB.NET, Python, Perl, Node.js, PHP, PureBasic, Tcl (средства для работы с Tcl включены в комплект поставки SQLite), Ruby, Haskell, Scheme, Smalltalk, Lua и Parser, а также ко многим другим. Полный список существующих средств размещён на странице проекта. | |||
Простота и удобство встраивания SQLite привели к тому, что библиотека используется в браузерах, музыкальных плеерах и многих других программах. | |||
В частности, SQLite используется в: | |||
*[[Simivod Collection]] | |||
*[[Симба]] | |||
[[Категория:Технологии]] | |||
Текущая версия от 20:23, 3 августа 2024
SQLite


| Тип | встраиваемая СУБД |
|---|---|
| Разработчик | Ричард Хипп[вд] |
| Написана на | Си |
| Операционная система | кроссплатформенность |
| Первый выпуск | август 2000 |
| Последняя версия | 3.46.0 (23 мая 2024) |
| Репозиторий | sqlite.org/src |
| Лицензия | Общественное достояние |
| Сайт | sqlite.org (англ.) |
Внимание! Данная статья ещё не завершена.
SQLite — компактная встраиваемая СУБД. Исходный код библиотеки передан в общественное достояние. В 2005 году проект получил награду Google-O’Reilly Open Source Awards. Используется во многих BAS и ZP шаблонах, например, Симба и Simivod Collection.
Устройство
Слово «встраиваемый» (англ. embedded) означает, что SQLite не использует парадигмы клиент-сервер, то есть движок SQLite не является отдельно работающим процессом, с которым взаимодействует программа, а представляет собой библиотеку, с которой программа компонуется, и движок становится составной частью программы.
Таким образом, в качестве протокола обмена используются вызовы функций (API) библиотеки SQLite. Такой подход уменьшает накладные расходы, время отклика и упрощает программу. SQLite хранит всю базу данных (включая определения, таблицы, индексы и данные) в единственном стандартном файле на том компьютере, на котором исполняется программа.
Простота реализации достигается за счёт того, что перед началом исполнения транзакции записи весь файл, хранящий базу данных, блокируется; ACID-функции достигаются в том числе за счёт создания файла журнала.
Несколько процессов или потоков могут одновременно без каких-либо проблем читать данные из одной базы. Запись в базу можно осуществить только в том случае, если никаких других запросов в данный момент не обслуживается; в противном случае попытка записи оканчивается неудачей, и в программу возвращается код ошибки.
Другим вариантом развития событий является автоматическое повторение попыток записи в течение заданного интервала времени.
Источник: Wikipedia
Распространение
Сама библиотека SQLite написана на C; существует большое количество привязок к другим языкам программирования, в том числе Apple Swift, Delphi, C++, Java, Kotlin, C#, VB.NET, Python, Perl, Node.js, PHP, PureBasic, Tcl (средства для работы с Tcl включены в комплект поставки SQLite), Ruby, Haskell, Scheme, Smalltalk, Lua и Parser, а также ко многим другим. Полный список существующих средств размещён на странице проекта.
Простота и удобство встраивания SQLite привели к тому, что библиотека используется в браузерах, музыкальных плеерах и многих других программах.
В частности, SQLite используется в: