Робота з базою даних із Python-програми
Автор: Ivan Oleksyn • Январь 28, 2023 • Лабораторная работа • 1,925 Слов (8 Страниц) • 187 Просмотры
Міністерство освіти і науки України
ІФНТУНГ
Лабораторна робота №10
Тема: «Робота з базою даних із Python-програми»
Виконав:
Студент групи
ІП-19-2
Олексин І. В.
Перевірив:
Гуменюк Т.В
Івано-Франківськ
2022 р.
Мета роботи Ознайомитися з організацією та розробити сховища даних з використанням парадигми ООП.
Завдання:
Доповнити розроблену в лабораторній роботі 7 програму збереженням даних в базі даних. Додати до створеного класу методи для запису даних у базу даних, видалення записів із бази, пошуку записів по заданому критерію.
КОД ПРОГРАМИ:
import sqlite3
class HomeLibrary:
def __init__(self, num, info_book):
self.num = num
self.info_book = info_book
def add_book_to_db(self):
conn = sqlite3.connect("lib.db")
cursor = conn.cursor()
cursor.execute("INSERT INTO books VALUES (:author,:name,:publ_house,:genre,:year)",
{
'author' : self.info_book["author"],
'name' : self.info_book["name"],
'publ_house' : self.info_book["publishing_house"],
'genre' : self.info_book["genre"],
'year' : self.info_book["year"]
})
print("Книга {} успішно добавлена! ".format(self.info_book["name"]))
conn.commit()
conn.close()
def get_book_by_num(self, num):
print("Книга за Індексом {}:".format(num))
if self.info_book is not None:
conn = sqlite3.connect("lib.db")
cursor = conn.cursor()
cursor.execute("SELECT *,oid FROM books")
for i in cursor.fetchall():
if num == i[5]:
self.beauty_print(i)
conn.commit()
conn.close()
def search(self, item, key):
print("Пошук книги за параметром {}:".format(item))
search_dict = {"Автор" : 0, "Назва" : 1,"Видавництво" : 2, "Жанр":3, "Рік" : 4}
conn = sqlite3.connect("lib.db")
cursor = conn.cursor()
cursor.execute("SELECT *,oid FROM books")
for i in cursor.fetchall():
if i[search_dict[item]] == key:
self.beauty_print(i)
...