SQLite — полегшена реляційна система керування базами даних. Втілена у вигляді бібліотеки, де реалізовано багато зі стандарту SQL-92. Початковий код SQLite поширюється як суспільне надбання (англ. public domain), тобто може використовуватися без обмежень та безоплатно з будь-якою метою. Фінансову підтримку розробників SQLite здійснює спеціально створений консорціум, до якого входять такі компанії, як Adobe, Oracle, Mozilla, Nokia, [en] і Bloomberg.
Тип | реляційна система управління базами даних |
---|---|
Розробник | [en] |
Стабільний випуск | 3.38.5 (6 травня 2022 ) |
Операційна система | багатоплатформовість |
Мова програмування | C |
Ліцензія | суспільне надбання |
Репозиторій | www.sqlite.org/src |
Вебсайт | sqlite.org |
|
З 2018 року SQLite, як й JSON та CSV, рекомендований Бібліотекою Конгресу США формат зберігання структурованого набору даних.
У 2005 році проєкт отримав нагороду .
Огляд
Особливістю SQLite є те, що вона не використовує парадигму клієнт-сервер, тобто рушій SQLite не є окремим процесом, з яким взаємодіє застосунок, а надає бібліотеку, з якою програма компілюється і рушій стає складовою частиною програми. Таким чином, як протокол обміну використовуються виклики функцій (API) бібліотеки SQLite. Такий підхід зменшує накладні витрати, час відгуку і спрощує програму. SQLite зберігає всю базу даних (включаючи визначення, таблиці, індекси і дані) в єдиному стандартному файлі на тому комп'ютері, на якому виконується застосунок. Простота реалізації досягається за рахунок того, що перед початком виконання транзакції весь файл, що зберігає базу даних, блокується; ACID-функції досягаються зокрема за рахунок створення файлу-журналу.
Кілька процесів або потоків можуть одночасно без жодних проблем читати дані з однієї бази. Запис в базу можна здійснити тільки в тому випадку, коли жодних інших запитів у цей час не обслуговується; інакше спроба запису закінчується невдачею, і в програму повертається код помилки. Іншим варіантом розвитку подій є автоматичне повторення спроб запису протягом заданого інтервалу часу.
У комплекті постачання йде також функціональна клієнтська частина у вигляді виконуваного файлу sqlite3, за допомогою якого демонструється реалізація функцій основної бібліотеки. Клієнтська частина працює з командного рядка, і дозволяє звертатися до файлу БД на основі типових функцій ОС.
Завдяки архітектурі рушія можливо використовувати SQlite як на вбудовуваних (embedded) системах, так і на виділених машинах з гігабайтними масивами даних.
Особливості SQLite
- транзакції атомарні, послідовні, ізольовані, і міцні (ACID) навіть після збоїв системи і збоїв живлення
- Встановлення без конфігурації — не потребує ані установки, ані адміністрування
- Реалізує значну частину стандарту SQL92
- База даних зберігається в одному крос-платформовому файлі на диску
- Підтримка терабайтних розмірів баз даних і гігабайтного розміру рядків та BLOB-ів
- Малий розмір коду: менше ніж 350KB повністю налаштований, і менш 200KB з опущеними додатковими функціями
- Швидший за популярні рушії клієнт-серверних баз даних для найпоширеніших операцій
- Простий, легкий у використанні API
- Написано в ANSI C, включено прив'язку до TCL; доступні також прив'язки для десятків інших мов
- Добре прокоментований початковий код зі 100 % тестовий покриттям гілок
- Доступний як єдиний файл початкового коду на ANSI C, який можна легко вставити в інший проєкт
- Автономність: немає зовнішніх залежностей
- Крос-платформовість: з коробки підтримується Unix (Linux і Mac OS X), (OS/2), Windows (Win32 і WinCE). Легко переноситься на інші системи
- Сирці перебувають в суспільному надбанні
- Поставляється з автономним клієнтом інтерфейсу командного рядка, який може бути використаний для управління базами даних SQLite
Інструменти створення та обслуговування БД
Створення та обслуговування БД можуть здійснюватись через текстову консоль SQL-командами або через спеціальні інструменти, у тому числі — з графічним інтерфейсом користувача.
Технології, що підтримують SQLite
Мови програмування
Сама бібліотека SQLite написана мовою C. Проте є реалізація бібліотеки на JavaScript sql.js
, яка дозволяє обробляти файли БД безпосередньо в браузері.
Для інших мов програмування розроблено механізм підключення й роботи з БД через цю бібліотеку: , Java, Python, Perl, PHP, Ruby, Haskell, Scheme, Smalltalk, Lua тощо. Засоби для роботи з Tcl включені в комплект постачання SQLite. Повний список наявних засобів можна знайти на сторінці проєкту.
Web-інструментарії
У ряді інструментаріїв присутня можливість використання SQLite як бази даних, наприклад:
- Bugzilla
- Django(БД за замовчуванням)
- Drupal
- Java
- Laravel
- [en]
- PHP
- Ruby on Rails
- Symfony
- Trac
- web2py
- Jam.py
Застосунки
Багато програм підтримують SQLite як формат зберігання даних, зокрема:
- Amarok — може використовувати бази даних SQLite як сховище музичної колекції.
- Gajim — SQLite використовується для зберігання історії контактів.
- Songbird (як застосунок, заснований на [en] 1.9)
- Banshee
- [en]
- Платформа XUL на рушії Gecko 1.9, [en] 1.9 і, потенційно, всі застосунки, засновані на цій платформі, у тому числі й Firefox починаючи з версії 3.0
- Google Chrome
- Google Gears
- Mendeley — менеджер pdf-документів, академічний засіб для дослідження (реалізується desktop & web).
- Zotero — менеджер інформації, бібліографічний менеджер, додаток Firefox.
Інше
Див. також
Примітки
- Recommended Formats Statement [ 22 серпня 2018 у Wayback Machine.] — Бібліотека Конгресу США
- . Архів оригіналу за 8 жовтня 2020. Процитовано 27 березня 2012.
- . Архів оригіналу за 26 червня 2008. Процитовано 16 липня 2017.
- (анг.) . Архів оригіналу за 16 лютого 2015. Процитовано 22.08.2018.
- . Архів оригіналу за 5 лютого 2009. Процитовано 7 серпня 2008.
Посилання
- Офіційний сайт [ 22 липня 2014 у Wayback Machine.]
- SQLite Database Browser — візуальний засіб адміністрування SQLite [ 10 вересня 2005 у Wayback Machine.]
- SQLite Administrator — засіб адміністрування і редактор SQL-запитів в SQLite [ 22 лютого 2006 у Wayback Machine.]
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
SQLite polegshena relyacijna sistema keruvannya bazami danih Vtilena u viglyadi biblioteki de realizovano bagato zi standartu SQL 92 Pochatkovij kod SQLite poshiryuyetsya yak suspilne nadbannya angl public domain tobto mozhe vikoristovuvatisya bez obmezhen ta bezoplatno z bud yakoyu metoyu Finansovu pidtrimku rozrobnikiv SQLite zdijsnyuye specialno stvorenij konsorcium do yakogo vhodyat taki kompaniyi yak Adobe Oracle Mozilla Nokia en i Bloomberg SQLiteTip relyacijna sistema upravlinnya bazami danihRozrobnik en Stabilnij vipusk 3 38 5 6 travnya 2022 2 roki tomu 2022 05 06 Operacijna sistema bagatoplatformovistMova programuvannya CLicenziya suspilne nadbannyaRepozitorij www sqlite org srcVebsajt sqlite org Mediafajli u Vikishovishi Z 2018 roku SQLite yak j JSON ta CSV rekomendovanij Bibliotekoyu Kongresu SShA format zberigannya strukturovanogo naboru danih U 2005 roci proyekt otrimav nagorodu OglyadOsoblivistyu SQLite ye te sho vona ne vikoristovuye paradigmu kliyent server tobto rushij SQLite ne ye okremim procesom z yakim vzayemodiye zastosunok a nadaye biblioteku z yakoyu programa kompilyuyetsya i rushij staye skladovoyu chastinoyu programi Takim chinom yak protokol obminu vikoristovuyutsya vikliki funkcij API biblioteki SQLite Takij pidhid zmenshuye nakladni vitrati chas vidguku i sproshuye programu SQLite zberigaye vsyu bazu danih vklyuchayuchi viznachennya tablici indeksi i dani v yedinomu standartnomu fajli na tomu komp yuteri na yakomu vikonuyetsya zastosunok Prostota realizaciyi dosyagayetsya za rahunok togo sho pered pochatkom vikonannya tranzakciyi ves fajl sho zberigaye bazu danih blokuyetsya ACID funkciyi dosyagayutsya zokrema za rahunok stvorennya fajlu zhurnalu Kilka procesiv abo potokiv mozhut odnochasno bez zhodnih problem chitati dani z odniyeyi bazi Zapis v bazu mozhna zdijsniti tilki v tomu vipadku koli zhodnih inshih zapitiv u cej chas ne obslugovuyetsya inakshe sproba zapisu zakinchuyetsya nevdacheyu i v programu povertayetsya kod pomilki Inshim variantom rozvitku podij ye avtomatichne povtorennya sprob zapisu protyagom zadanogo intervalu chasu U komplekti postachannya jde takozh funkcionalna kliyentska chastina u viglyadi vikonuvanogo fajlu sqlite3 za dopomogoyu yakogo demonstruyetsya realizaciya funkcij osnovnoyi biblioteki Kliyentska chastina pracyuye z komandnogo ryadka i dozvolyaye zvertatisya do fajlu BD na osnovi tipovih funkcij OS Zavdyaki arhitekturi rushiya mozhlivo vikoristovuvati SQlite yak na vbudovuvanih embedded sistemah tak i na vidilenih mashinah z gigabajtnimi masivami danih Osoblivosti SQLitetranzakciyi atomarni poslidovni izolovani i micni ACID navit pislya zboyiv sistemi i zboyiv zhivlennya Vstanovlennya bez konfiguraciyi ne potrebuye ani ustanovki ani administruvannya Realizuye znachnu chastinu standartu SQL92 Baza danih zberigayetsya v odnomu kros platformovomu fajli na disku Pidtrimka terabajtnih rozmiriv baz danih i gigabajtnogo rozmiru ryadkiv ta BLOB iv Malij rozmir kodu menshe nizh 350KB povnistyu nalashtovanij i mensh 200KB z opushenimi dodatkovimi funkciyami Shvidshij za populyarni rushiyi kliyent servernih baz danih dlya najposhirenishih operacij Prostij legkij u vikoristanni API Napisano v ANSI C vklyucheno priv yazku do TCL dostupni takozh priv yazki dlya desyatkiv inshih mov Dobre prokomentovanij pochatkovij kod zi 100 testovij pokrittyam gilok Dostupnij yak yedinij fajl pochatkovogo kodu na ANSI C yakij mozhna legko vstaviti v inshij proyekt Avtonomnist nemaye zovnishnih zalezhnostej Kros platformovist z korobki pidtrimuyetsya Unix Linux i Mac OS X OS 2 Windows Win32 i WinCE Legko perenositsya na inshi sistemi Sirci perebuvayut v suspilnomu nadbanni Postavlyayetsya z avtonomnim kliyentom interfejsu komandnogo ryadka yakij mozhe buti vikoristanij dlya upravlinnya bazami danih SQLiteInstrumenti stvorennya ta obslugovuvannya BDStvorennya ta obslugovuvannya BD mozhut zdijsnyuvatis cherez tekstovu konsol SQL komandami abo cherez specialni instrumenti u tomu chisli z grafichnim interfejsom koristuvacha Tehnologiyi sho pidtrimuyut SQLiteMovi programuvannya Sama biblioteka SQLite napisana movoyu C Prote ye realizaciya biblioteki na JavaScript sql js yaka dozvolyaye obroblyati fajli BD bezposeredno v brauzeri Dlya inshih mov programuvannya rozrobleno mehanizm pidklyuchennya j roboti z BD cherez cyu biblioteku C Java Python Perl PHP Ruby Haskell Scheme Smalltalk Lua tosho Zasobi dlya roboti z Tcl vklyucheni v komplekt postachannya SQLite Povnij spisok nayavnih zasobiv mozhna znajti na storinci proyektu Web instrumentariyi U ryadi instrumentariyiv prisutnya mozhlivist vikoristannya SQLite yak bazi danih napriklad Bugzilla Django BD za zamovchuvannyam Drupal Java Laravel en PHP Ruby on Rails Symfony Trac web2py Jam py Zastosunki Bagato program pidtrimuyut SQLite yak format zberigannya danih zokrema Amarok mozhe vikoristovuvati bazi danih SQLite yak shovishe muzichnoyi kolekciyi Gajim SQLite vikoristovuyetsya dlya zberigannya istoriyi kontaktiv Songbird yak zastosunok zasnovanij na en 1 9 Banshee en Platforma XUL na rushiyi Gecko 1 9 en 1 9 i potencijno vsi zastosunki zasnovani na cij platformi u tomu chisli j Firefox pochinayuchi z versiyi 3 0 Google Chrome Google Gears Mendeley menedzher pdf dokumentiv akademichnij zasib dlya doslidzhennya realizuyetsya desktop amp web Zotero menedzher informaciyi bibliografichnij menedzher dodatok Firefox InsheProxmox Virtual Environment Flame virus Div takozhPloska baza danih Berkeley DB Spisok sistem keruvannya bazami danihPrimitkiRecommended Formats Statement 22 serpnya 2018 u Wayback Machine Biblioteka Kongresu SShA Arhiv originalu za 8 zhovtnya 2020 Procitovano 27 bereznya 2012 Arhiv originalu za 26 chervnya 2008 Procitovano 16 lipnya 2017 ang Arhiv originalu za 16 lyutogo 2015 Procitovano 22 08 2018 Arhiv originalu za 5 lyutogo 2009 Procitovano 7 serpnya 2008 PosilannyaOficijnij sajt 22 lipnya 2014 u Wayback Machine SQLite Database Browser vizualnij zasib administruvannya SQLite 10 veresnya 2005 u Wayback Machine SQLite Administrator zasib administruvannya i redaktor SQL zapitiv v SQLite 22 lyutogo 2006 u Wayback Machine