Movatterモバイル変換


[0]ホーム

URL:


Перейти до вмісту
Вікіпедія
Пошук

SQLite

Матеріал з Вікіпедії — вільної енциклопедії.
SQLite
Типреляційна система управління базами даних
РозробникРічард Гіп[en]
Стабільний випуск3.38.5 (6 травня2022; 2 роки тому (2022-05-06))
Операційна системабагатоплатформовість
Мова програмуванняC
Ліцензіясуспільне надбання
Репозиторійhttps://sqlite.org./docsrc,https://sqlite.org./src
Вебсайтsqlite.org

SQLite — полегшенареляційна система керування базами даних. Втілена у виглядібібліотеки, де реалізовано багато зі стандартуSQL-92.Початковий код SQLite поширюється яксуспільне надбання (англ.public domain), тобто може використовуватися без обмежень та безоплатно з будь-якою метою. Фінансову підтримку розробників SQLite здійснює спеціально створенийконсорціум, до якого входять такі компанії, якAdobe,Oracle,Mozilla,Nokia,Bentley[en] іBloomberg.

З 2018 року SQLite, як йJSON таCSV, рекомендованийБібліотекою Конгресу США формат зберігання структурованого набору даних[1].

У2005 році проєкт отримав нагородуGoogle-O'Reilly Open Source Awards.

Огляд

[ред. |ред. код]

Особливістю SQLite є те, що вона не використовує парадигмуклієнт-сервер, тобто рушій SQLite не є окремимпроцесом, з яким взаємодієзастосунок, а надає бібліотеку, з якою програма компілюється і рушій стає складовою частиною програми. Таким чином, як протокол обміну використовуються виклики функцій (API) бібліотеки SQLite. Такий підхід зменшує накладні витрати, час відгуку і спрощує програму. SQLite зберігає всю базу даних (включаючи визначення,таблиці,індекси і дані) в єдиному стандартному файлі на томукомп'ютері, на якому виконується застосунок. Простота реалізації досягається за рахунок того, що перед початком виконання транзакції весьфайл, що зберігає базу даних, блокується;ACID-функції досягаються зокрема за рахунок створення файлу-журналу.

Кількапроцесів абопотоків можуть одночасно без жодних проблем читати дані з однієї бази. Запис в базу можна здійснити тільки в тому випадку, коли жодних інших запитів у цей час не обслуговується; інакше спроба запису закінчується невдачею, і в програму повертається код помилки. Іншим варіантом розвитку подій є автоматичне повторення спроб запису протягом заданого інтервалу часу.

У комплекті постачання йде також функціональна клієнтська частина у виглядівиконуваного файлу sqlite3, за допомогою якого демонструється реалізація функцій основної бібліотеки. Клієнтська частина працює зкомандного рядка, і дозволяє звертатися до файлу БД на основі типових функційОС.

Завдяки архітектурі рушія можливо використовувати SQlite як навбудовуваних (embedded) системах, так і на виділених машинах з гігабайтними масивами даних.

Особливості SQLite

[ред. |ред. код]
  • транзакціїатомарні, послідовні, ізольовані, і міцні (ACID) навіть після збоїв системи і збоїв живлення
  • Встановлення без конфігурації — не потребує ані установки, ані адміністрування
  • Реалізує значну частину стандарту SQL92[2]
  • База даних зберігається в одному крос-платформовому файлі на диску
  • Підтримкатерабайтних розмірів баз даних ігігабайтного розміру рядків таBLOB-ів
  • Малий розмір коду: менше ніж 350KB повністю налаштований, і менш 200KB з опущеними додатковими функціями
  • Швидший за популярні рушіїклієнт-сервернихбаз даних для найпоширеніших операцій
  • Простий, легкий у використанніAPI
  • Написано вANSI C, включено прив'язку доTCL; доступні також прив'язки для десятків інших мов
  • Добре прокоментованийпочатковий код зі 100 % тестовий покриттям гілок
  • Доступний як єдиний файл початкового коду на ANSI C, який можна легко вставити в інший проєкт
  • Автономність: немає зовнішніх залежностей
  • Крос-платформовість: з коробки підтримуєтьсяUnix (Linux іMac OS X),OS/2,Windows (Win32 іWinCE). Легко переноситься на інші системи
  • Сирці перебувають в суспільному надбанні
  • Поставляється з автономним клієнтомінтерфейсу командного рядка, який може бути використаний для управління базами даних SQLite

Інструменти створення та обслуговування БД

[ред. |ред. код]

Створення та обслуговування БД можуть здійснюватись через текстову консоль SQL-командами або через спеціальні інструменти, у тому числі — зграфічним інтерфейсом користувача[3].

Технології, що підтримують SQLite

[ред. |ред. код]

Мови програмування

[ред. |ред. код]

Сама бібліотекаSQLite написана мовоюC. Проте є реалізація бібліотеки наJavaScriptsql.js, яка дозволяє обробляти файли БД безпосередньо в браузері[4].

Для іншихмов програмування розроблено механізм підключення й роботи з БД через цю бібліотеку:C++,Java,Python,Perl,PHP,Ruby,Haskell,Scheme,Smalltalk,Lua тощо. Засоби для роботи зTcl включені в комплект постачання SQLite. Повний список наявних засобів можна знайти на сторінці проєкту[5].

Web-інструментарії

[ред. |ред. код]

У ряді інструментаріїв присутня можливість використання SQLite як бази даних, наприклад:

Застосунки

[ред. |ред. код]

Багато програм підтримують SQLite як формат зберігання даних, зокрема:

  • Amarok — може використовувати бази даних SQLite як сховище музичної колекції.
  • Gajim — SQLite використовується для зберігання історії контактів.
  • Songbird (якзастосунок, заснований наXULRunner[en] 1.9)
  • Banshee
  • F-Spot[en]
  • ПлатформаXUL на рушіїGecko 1.9,XULRunner[en] 1.9 і, потенційно, всі застосунки, засновані на цій платформі, у тому числі йFirefox починаючи з версії 3.0
  • Google Chrome
  • Google Gears
  • Mendeley — менеджерpdf-документів, академічний засіб для дослідження (реалізується desktop & web).
  • Zotero — менеджер інформації, бібліографічний менеджер,додаток Firefox.

Інше

[ред. |ред. код]

Див. також

[ред. |ред. код]

Примітки

[ред. |ред. код]
  1. Recommended Formats Statement[Архівовано 22 серпня 2018 уWayback Machine.] — Бібліотека Конгресу США
  2. SQL Features That SQLite Does Not Implement. Архіворигіналу за 8 жовтня 2020. Процитовано 27 березня 2012.
  3. sqlite - Management Tools. Архіворигіналу за 26 червня 2008. Процитовано 16 липня 2017.[Архівовано 2008-06-26 уWayback Machine.]
  4. SQLite compiled to javascript (анг.) . Архіворигіналу за 16 лютого 2015. Процитовано 22.08.2018.
  5. Список прив'язок SQLite для інших мов. Архіворигіналу за 5 лютого 2009. Процитовано 7 серпня 2008.[Архівовано 2009-02-05 уWayback Machine.]

Посилання

[ред. |ред. код]
Отримано зhttps://uk.wikipedia.org/w/index.php?title=SQLite&oldid=44025956
Категорії:
Приховані категорії:

[8]ページ先頭

©2009-2025 Movatter.jp