Управление базами данных python

Управление базами данных python

2. Создать подключение к базе данных SQLite:

🐍 Самоучитель по Python для начинающих. Часть 22: Основы работы с SQLite

Более продвинутый браузер/редактор – DB Browser :

🐍 Самоучитель по Python для начинающих. Часть 22: Основы работы с SQLite

Из многофункциональных инструментов для работы с SQLite отлично подходит базовая версия Dbeaver .

Добавление записей в БД

Внесем в базу первую запись – информацию о пользователе по имени Инна Егорова, 20 лет, с факультета прикладной математики:

🐍 Самоучитель по Python для начинающих. Часть 22: Основы работы с SQLite

Редактирование записей

Изменим возраст для пользователя с именем Инна и фамилией Егорова:

🐍 Самоучитель по Python для начинающих. Часть 22: Основы работы с SQLite

Удаление записей

Напишем запрос на удаление из БД всех записей, которые содержат «Прикладная математика» в поле faculty :

🐍 Самоучитель по Python для начинающих. Часть 22: Основы работы с SQLite

Запросы на извлечение данных из нескольких таблиц

В реальных приложениях очень часто необходимо извлекать данные из нескольких таблиц сразу. Проиллюстрируем на примере базы данных university, в которой содержатся две таблицы – students и fees. Размер оплаты за обучение (fee) снижается на 3% каждый год. Кроме того, студенты, у который средний балл успеваемости соответствует установленному критерию, могут рассчитывать на дополнительную скидку.

🐍 Самоучитель по Python для начинающих. Часть 22: Основы работы с SQLite

🐍 Самоучитель по Python для начинающих. Часть 22: Основы работы с SQLite

🐍 Самоучитель по Python для начинающих. Часть 22: Основы работы с SQLite

Создадим и заполним базу с помощью скрипта. Код для поиска всех препаратов, названия которых совпадают с запросом, выглядит так:

🐍 Самоучитель по Python для начинающих. Часть 22: Основы работы с SQLite

🐍 Самоучитель по Python для начинающих. Часть 22: Основы работы с SQLite

🐍 Самоучитель по Python для начинающих. Часть 22: Основы работы с SQLite

🐍 Самоучитель по Python для начинающих. Часть 22: Основы работы с SQLite

🐍 Самоучитель по Python для начинающих. Часть 22: Основы работы с SQLite

🐍 Самоучитель по Python для начинающих. Часть 22: Основы работы с SQLite

Напишите программу, которая определяет, сколько времени суммарно каждый сотрудник провел в CRM в июне. Нужно вывести список сотрудников, которые провели в CRM более 95 часов.

🐍 Самоучитель по Python для начинающих. Часть 22: Основы работы с SQLite

Напишите программу, которая:

  • Находит и выводит список записей, у которых есть дубликаты.
  • Предлагает удалить дубликаты, и в случае ответа yes – удаляет их.
import sqlite3 con = sqlite3.connect('sales.db') cursor = con.cursor() # Находим дубликаты cursor.execute(''' SELECT brand, model, engine_volume, max_speed, price, COUNT(*) FROM items GROUP BY LOWER(brand), LOWER(model), engine_volume, max_speed, price HAVING COUNT(*) > 1 ''') # Выводим найденные дубликаты duplicates = cursor.fetchall() if duplicates: print('У этих записей есть дубликаты:') for row in duplicates: print(row[:-1]) answer = input('Хотите удалить дубликаты? Введите yes/no ' ) if answer.lower() == 'yes': # Создаем подключение к базе данных con = sqlite3.connect('sales.db') # Создаем курсор для взаимодействия с базой данных cursor = con.cursor() # Удаляем дубликаты со значением не начинающимся на заглавную букву cursor.execute(''' DELETE FROM items WHERE id NOT IN ( SELECT id FROM ( SELECT id, ROW_NUMBER() OVER ( PARTITION BY LOWER(brand), LOWER(model), color, engine_volume, max_speed, price ORDER BY id ) row_number FROM items ) WHERE row_number = 1 or (row_number = 2 and brand = LOWER(brand) and model = LOWER(model)) ) ''') # Сохраняем изменения в базе данных con.commit() print('Дубликаты удалены') else: print('Не забудьте удалить дубликаты') else: print('Дубликаты не найдены') # Закрываем соединение с базой данных con.close() 

Подведем итоги

Мы научились выполнять основные операции с базой данных SQLite :

  • создавать, редактировать и удалять записи;
  • заполнять базу данными с помощью pandas;
  • делать выборки данных по различным критериям;
  • извлекать данные для последующих расчетов;
  • удалять дубликаты записей.
Читайте также:  JavaScript Alert Box by PHP - www.pakainfo.com

Работа с базами данных – обширная тема, и ее невозможно подробно рассмотреть в одной статье. За кадром осталось многое, в том числе работа с таблицами, связанными отношениями один к одному, один ко многим, многие ко многим и многие к одному. Эту тему мы подробно разберем в новом курсе по Django.

  1. Особенности, сферы применения, установка, онлайн IDE
  2. Все, что нужно для изучения Python с нуля – книги, сайты, каналы и курсы
  3. Типы данных: преобразование и базовые операции
  4. Методы работы со строками
  5. Методы работы со списками и списковыми включениями
  6. Методы работы со словарями и генераторами словарей
  7. Методы работы с кортежами
  8. Методы работы со множествами
  9. Особенности цикла for
  10. Условный цикл while
  11. Функции с позиционными и именованными аргументами
  12. Анонимные функции
  13. Рекурсивные функции
  14. Функции высшего порядка, замыкания и декораторы
  15. Методы работы с файлами и файловой системой
  16. Регулярные выражения
  17. Основы скрапинга и парсинга
  18. Основы ООП: инкапсуляция и наследование
  19. Основы ООП: абстракция и полиморфизм
  20. Графический интерфейс на Tkinter
  21. Основы разработки игр на Pygame
  22. Основы работы с SQLite
  23. Основы веб-разработки на Flask
  24. Основы работы с NumPy

Материалы по теме

Источник

Оцените статью