SQLite

Матеріал з Вікіпедії — вільної енциклопедії.

Перейти до: навігація, пошук
SQLite
Тип: система управління базами даних
Розробник: D. Richard Hipp
Стабільний випуск: 3.6.0 (beta) / 16 липня 2008
Мова програмування: C
ОС: крос-платформовий
Ліцензія: загальне надбання
Сайт: http://sqlite.org/

SQLite — вбудовуваний рушій баз даних. В 2005 році проект отримав нагороду Google-O’Reilly Open Source Awards.

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

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

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

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

Зміст

[ред.] Технології, підтримуючі SQLite

[ред.] Мови програмування

Сама бібліотека SQLite написана на C; існує велика кількість прив'язок до інших мов програмування, зокрема C++, Java, Python, Perl, PHP, Tcl (засоби для роботи з Tcl включені в комплект постачання SQLite), Ruby, Haskell, Scheme, Smalltalk і Lua, а також до багатьом іншим. Повний список існуючих засобів можна знайти на сторінці проекту [1].

[ред.] Web-інструментарії

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

[ред.] Застосунки

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

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

[ред.] Виноски

[ред.] Посилання

Особисті інструменти