SQLite

Как да получите достъп до SQLite от Python

Как да получите достъп до SQLite от Python
Python е популярен и стабилен език за програмиране, богат на функции, които го правят използваем в широк спектър от случаи като наука за данни, работа в мрежа, ИТ автоматизация, тестване на проникване и много други. Той също така има прост синтаксис, който позволява на разработчиците, които знаят други езици за програмиране, да се адаптират към използването на Python с лекота.Данните са навсякъде и широк спектър от софтуерни приложения взаимодействат с данните, използвайки система за управление на база данни. SQLite е една от най-популярните системи за управление на бази данни в Python.

SQLite е прост, мощен, с отворен код и релационен механизъм за бази данни, който поддържа големи софтуерни приложения и вградени системи. SQLite е самостоятелен и изисква минимална конфигурация, което улеснява настройката и работата с минимално време. По подразбиране Python се вгражда с модул SQLite (sqlite3), много интуитивен модул за работа с бази данни на SQLite в Python.

В този урок ще разгледаме как да използваме Python за работа с бази данни на SQLite. От установяване на връзка до създаване на бази данни, четене на бази данни, актуализиране и премахване на бази данни.

Нека започнем с инсталирането на SQLite:

Инсталиране на SQLite и Python

В зависимост от вашата дистрибуция на Linux, можете да изтеглите архива на SQLite от https: // www.sqlite.org / изтегляне.html или използвайте мениджъра на пакети.

За да го инсталирате на Debian:

sudo apt-get update
sudo apt-get install sqlite -y

След това трябва да имате инсталирана най-новата версия на Python3. Python вече трябва да е предварително инсталиран във вашата дистрибуция по подразбиране.

Черупка на SQLite

Методът по подразбиране за взаимодействие с бази данни на SQLite е използването на обвивката. Черупката ви позволява да изпълнявате SQL команди вградени или колекция за изпълнение на функции в бази данни.

За да стартирате черупката на SQLite, използвайте командата:

$ sqlite

SQLite версия 2.8.17 Въведете „.помощ ”за инструкции

sqlite>

Това трябва да стартира обвивката на SQLite с подкана, която ви позволява да въвеждате команди. Започнете с въвеждане на командата .помощ за преглед на помощната черупка.

sqlite> .помогне
.бази данни Изброява имена и файлове на прикачени бази данни
.изхвърляне ?ТАБЛИЦА?... Изхвърлете базата данни в текстов формат
.echo ON | OFF Включване или изключване на командното ехо
.изход Излезте от тази програма
.обяснете ON | OFF Включете или изключете изходния режим, подходящ за EXPLAIN.
.заглавка (и) ВКЛ. | ИЗКЛ. Включване или изключване на дисплея на заглавките
.Показване на това съобщение
.индекси TABLE Показване на имената на всички индекси в TABLE
.режим РЕЖИМ Задайте режим на един от "ред (и)", "колона (и)",
"вмъкване", "списък" или "html"
----------------------------------------------------------------------

За да излезете от черупката на SQLite, използвайте .команда за отказ.

sqlite> .напуснете

Има и други функции и операции, които можете да използвате вътре в черупката на SQLite. Например, за да видите всички бази данни, можете да използвате .команда за база данни.

Силно препоръчвам да експериментирате с черупката на SQLite и да се запознаете, тъй като тя ще ви позволи да разберете как да използвате модула SQLite3 в Python.

Свързване към база данни

Нека сега използваме модулите Python и SQLite3 за взаимодействие с бази данни на SQLite. Добре е да се отбележи, че има и други модули на Python, които можете да използвате за взаимодействие с SQLite. SQLite3 обаче е прост и се доставя в комплект с Python.

Помислете за скрипта по-долу, за да се свържете с базата данни SQLite.

импортиране на sqlite3 от sqlite3 Грешка при импортиране
def connect_db (db_path):
връзка = Няма опит:
връзка = sqlite3.свързване (db_path)
print ("Базата данни е свързана успешно")
с изключение на Грешка като e:
print (f "Възникна грешка: e")
връщане на връзката
connect_db ("/ дом / потребител / работен плот / демо.sqlite ")

Започваме с импортиране на модулите SQLite и Error.
В ред 3 създаваме функция connect_db (), която приема пътя на базата данни като аргумент.
Следващата част включва блок за опит / грешка. Първата част приема пътя на базата данни като аргумент и установява връзка. Забележете, че в SQLite, ако посочената база данни не съществува, тя се създава автоматично.
Блокът за грешка се опитва да улови изключения и ги отпечатва на потребителя.
В последния ред извикваме функцията connect_db и предаваме пътя към базата данни, която искаме да използваме или създадем.

ЗАБЕЛЕЖКА: Ако искате да създадете база данни с памет вместо диск, можете да посочите: памет в свържете obj.

sqlite3.свързване (“: памет”)

SQLite Създаване на таблица

В SQLite можем да използваме SQL черупката за създаване на таблици с помощта на CREATE TABLE Query. Общият синтаксис е като:

СЪЗДАВАНЕ НА ТАБЛИЦА име на база данни.име_на_таблица (
column_name тип данни ОСНОВЕН КЛЮЧ (колона (и),
тип данни на column2_name,
... колонаN_name тип данни,
);

Няма да се впускам в създаването на таблици с помощта на черупката на SQLite, тъй като основният ни фокус е Python. Разгледайте документацията за SQL Lite от ресурса по-долу, за да научите повече. Сега, за да използваме модулите Python и sqlite3 за създаване на таблици на базата данни, трябва да използваме обекта на курсора и да изпълним функциите на SQL заявки. Помислете за кода по-долу:

импортиране на sqlite3 от sqlite3 Грешка при импортиране
def connect_db (db_path):
връзка = Няма
опитвам:
връзка = sqlite3.свързване (db_path)
print ("Базата данни е свързана успешно")
с изключение на Грешка като e:
print (f "Възникна грешка: e")
връщане на връзката def run_query (връзка, sql_query):
курсор = връзка.курсор ()
опитвам:
курсора.изпълнение (sql_query)
Връзка.ангажиране ()
печат ("SQL заявката се изпълнява успешно ... [ОК]")
с изключение на Грешка като e:
print (f "Заявката е неуспешна ... e")
заявка = "" "
СЪЗДАЙТЕ ТАБЛИЦА, АКО НЕ СЪЩЕСТВА показва (
id ИНТЕГРИРАНА ОСНОВНА КЛЮЧОВА АВТОМОБИЛНА ИНФОРМАЦИЯ,
име ТЕКСТ НЕ НУЛЕН,
година INTGER,
жанр ТЕКСТ,
страна ТЕКСТ
);
""
run_query (connection = connect_db ("/ home / user / Desktop / sql.sqlite "), sql_query = заявка)

Нека сега обсъдим какво прави горният код - намерете първата функция, обяснена по-горе (моля, вижте). Във втората функция, create, ние предаваме връзката и заявката, която да се изпълни като параметри. Следващите редове създават обект на курсора, който ще използваме, за да извикаме метода за изпълнение. Както бе споменато по-горе, следващите редове извикват обекта на курсора за изпълнение на метода и извикването предава заявката като параметър. Блокът отпечатва и съобщение за успешно изпълнение на заявката. След като заявката се изпълни успешно, казваме на SQLite да използва метода на фиксиране, за да запише промените в базата данни. Блокът освен улавя изключения и отпечатва съобщението за грешка на потребителя. И накрая, ние създаваме заявката за изпълнение с помощта на прост синтаксис на SQLite.

SQLite Вмъкване на записи

За да добавим данни към базата данни на SQLite, можем да се потопим във функцията run_query (), която използвахме за създаване, тъй като тя може да изпълнява всяка заявка за SQLite, която предаваме към нея. Ние обаче използваме заявката INSERT INTO, за да добавим данни към таблицата.

Помислете за блока по-долу:

add_shows = "" "
ВЪВЕДЕТЕ В
показва (идентификатор, име, година, жанр, държава)
СТОЙНОСТИ
("101", "Бруклин девет-девет", "2013", "комедия", "САЩ"),
("201", "Star-Trek: Discovery", "2017", "Sci-Fi", "USA"),
("301", "Star-Trek: Picard", "2020", "Sci-Fi", "USA");
"" "run_query (connection = connect_db (" / home / user / Desktop / sql.sqlite "), sql_query = add_shows)

Сега трябва да извикаме функцията run_query и да добавим пропуска заявката add_shows, за да вмъкнем данни в таблицата показва. Уверете се, че таблицата, в която вмъквате данни, съществува, за да избегнете грешка.

SQLite Изтриване на записи

Можете също да използвате функцията run_query (), за да премахнете записи от посочената таблица. Всичко, от което се нуждаете, е да зададете заявката като ИЗТРИВАНЕ ОТ.

Обмислете следната подзаявка:

remove = "DELETE FROM показва WHERE name = 'Brooklyn Nine-Nine'" run_query (connection = connect_db ("/ home / user / Deskop / sql.sqlite "), sql_query = премахване)

Горната заявка премахва шоуто „Бруклин девет-девет“ от таблицата на шоутата.

Заключение

Този урок ви научи как да използвате Python за достъп и взаимодействие с бази данни на SQLite. От това, което научихте от този урок, вече можете да създавате функции, да се свързвате с бази данни на SQLite, да създавате таблици, да вмъквате данни и да ги изтривате. Въпреки че това е начално ръководство за работа с SQLite в Python, трябва да започнете да изучавате други технологии като SQLAlchemy и други.

Най-добрите игри за игра с ръчно проследяване
Oculus Quest наскоро представи страхотната идея за ръчно проследяване без контролери. С непрекъснато нарастващия брой игри и дейности, които изпълнява...
Как да покажете OSD наслагване в приложения на цял екран за Linux и игри
Играта на цял екран или използване на приложения в режим на цял екран без разсейване може да ви откъсне от съответната системна информация, видима в п...
Топ 5 карти за залавяне на игри
Всички сме виждали и обичаме поточни игри в YouTube. PewDiePie, Jakesepticye и Markiplier са само някои от най-добрите геймъри, които са спечелили мил...