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 Увімкнути або вимкнути команду echo
.вихід Вийти з цієї програми
.пояснити ВКЛ. | ВИМК. Увімкнути або вимкнути режим виведення, придатний для ПОЯСНЕННЯ.
.header (s) ON | OFF Увімкнути або вимкнути відображення заголовків
.допомога Показати це повідомлення
.індекси ТАБЛИЦЯ Показати назви всіх індексів ТАБЛИЦІ
.режим РЕЖИМ Встановіть режим на один із "рядків (рядків)", "стовпців (колонок)",
"вставити", "список" або "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 ("/ home / user / Desktop / demo.sqlite ")

Ми починаємо з імпорту модулів SQLite та Error.
У рядку 3 ми створюємо функцію connect_db (), яка приймає шлях до бази даних як аргумент.
Наступна частина включає блок спроб / помилок. Перша частина бере аргументом шлях до бази даних і встановлює зв’язок. Зверніть увагу, що в SQLite, якщо вказана база даних не існує, вона створюється автоматично.
Блок помилок намагається виявити винятки та роздрукувати їх користувачеві.
У останньому рядку ми викликаємо функцію connect_db і передаємо шлях до бази даних, яку хочемо використовувати або створити.

ПРИМІТКА: Якщо ви хочете створити базу даних пам'яті замість диска, ви можете вказати: пам'ять в об'єкті підключення.

sqlite3.підключити (“: пам’ять”)

Створення таблиці SQLite

У SQLite ми можемо використовувати оболонку SQL для створення таблиць за допомогою запиту CREATE TABLE. Загальний синтаксис такий:

СТВОРИТИ ІМЯ бази даних.ім'я таблиці (
type_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)
з'єднання.commit ()
print ("Запит SQL успішно запущений… [OK]")
крім помилки як e:
print (f "Помилка запиту… e")
query = "" "
СТВОРИТИ ТАБЛИЦЮ, ЯКЩО НЕ ІСНУЄ шоу (
id ІНТЕГРАЛЬНИЙ ПЕРВИННИЙ КЛЮЧ АВТОМОБІЛЬ,
назва ТЕКСТ НЕ ПУСТИЙ,
рік INTGER,
жанр ТЕКСТ,
країна ТЕКСТ
);
"" "
run_query (connection = connect_db ("/ home / user / Desktop / sql.sqlite "), sql_query = запит)

Давайте зараз обговоримо, що робить наведений вище код - знайти першу функцію, пояснену вище (зверніться). У другій функції, create, ми передаємо з'єднання та запит для виконання як параметри. Наступні рядки створюють об'єкт курсору, який ми будемо використовувати для виклику методу execute. Як згадувалося вище, наступні рядки викликають об'єкт курсора для виконання методу, а виклик передає запит як параметр. Блок також друкує повідомлення про успішне виконання запиту. Після успішного виконання запиту ми повідомляємо SQLite використовувати метод коміту для збереження змін у базі даних. Блок Osim ловить винятки і друкує повідомлення про помилку користувачеві. Нарешті, ми створюємо Запит для виконання, використовуючи простий синтаксис SQLite.

Вставка записів SQLite

Щоб додати дані до бази даних SQLite, ми можемо зануритися у функцію run_query (), яку ми використовували для створення, оскільки вона може запускати будь-який запит SQLite, який ми передаємо їй. Однак ми використовуємо запит INSERT INTO, щоб додати дані до таблиці.

Розглянемо блок нижче:

add_shows = "" "
ВСТАВИТИ В
шоу (ідентифікатор, ім'я, рік, жанр, країна)
ЦІННОСТІ
("101", "Бруклін дев'ять-дев'ять", "2013", "комедія", "США"),
("201", "Зоряний шлях: Відкриття", "2017", "Наукова фантастика", "США"),
("301", "Зоряний шлях: Пікар", "2020", "Науково-фантастичний", "США");
"" "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 та інші.

Vulkan for Linux Users
With each new generation of graphics cards, we see game developers push the limits of graphical fidelity and come one step closer to photorealism. But...
OpenTTD vs Simutrans
Creating your own transport simulation can be fun, relaxing and extremely enticing. That's why you need to make sure that you try out as many games as...
OpenTTD Tutorial
OpenTTD is one of the most popular business simulation games out there. In this game, you need to create a wonderful transportation business. However,...