Урок 80. MySQL и Python
⚡ Кратко: суть темы
MySQL и Python — подключаемся к реляционной базе данных из Python через библиотеку PyMySQL, выполняем SQL-запросы и безопасно обрабатываем результаты.
- Устанавливаем
pip install pymysqlи открываем соединение черезpymysql.connect(...). - Через объект
cursorвыполняем запросы методомexecute(), а результаты читаем черезfetchone(),fetchmany(),fetchall()или циклfor row in cursor. - Параметры запроса всегда передаём отдельно от текста SQL — через
%sили%(name)s— чтобы избежать SQL-инъекций. - Для надёжности используем
with connection.cursor() as cursorи обрабатываем ошибки черезtry ... except pymysql.MySQLError.
Что запомнить: никогда не подставляй пользовательский ввод напрямую в строку SQL — только параметризованные запросы.
Частая ошибка: забыть запятую в кортеже из одного значения: (value,) обязательна.
📖 О чём этот урок
Когда программы растут, данные нужно хранить вне кода — в базах данных. MySQL — одна из самых популярных реляционных СУБД. В этом уроке мы научимся подключаться к ней из Python, выполнять запросы, получать результаты и защищать код от типичных ошибок.
Что изучим
- Установку PyMySQL и создание соединения с параметрами подключения.
- Создание курсора и выполнение SQL-запросов.
- Методы чтения результатов:
fetchone(),fetchmany(),fetchall()и итерация по курсору. - Параметризованные запросы с позиционными
%sи именованными%(name)sплейсхолдерами. - Обработку ошибок через исключения PyMySQL.
- Контекстный менеджер
withдля автоматического закрытия соединения и курсора.
📚 Что повторить перед изучением
- ← Предыдущий урок: Summary session 20
- Исключения и конструкция
try ... except(урок 48). - Контекстный менеджер
withдля работы с файлами (урок 52). - Словари и распаковка
**config(уроки 34–36).