Книга: PyNEng
Назад: 18. Работа с базами данных
Дальше: SQLite

SQL

SQL

SQL (structured query language) - используется для описания структуры БД, управления данными (добавление, изменение, удаление, получение), управления правами доступа к БД и ее объектам, управления транзакциями.

Язык SQL подразделяется на такие категории:

  • DDL (Data Definition Language) - язык описания данных
  • DML (Data Manipulation Language) - язык манипулирования данными
  • DCL (Data Control Language) - язык определения доступа к данным
  • TCL (Transaction Control Language) - язык управления транзакциями

В каждой категории есть свои операторы (перечислены не все операторы):

  • DDL
    • CREATE - создание новой таблицы, СУБД, схемы
    • ALTER - изменение существующей таблицы, колонки
    • DROP - удаление существующих объектов из СУБД
  • DML
    • SELECT - выбор данных
    • INSERT - добавление новых данных
    • UPDATE - обновление существующих данных
    • DELETE - удаление данных
  • DCL
    • GRANT - предоставление пользователям разрешения на чтение/запись определенных объектов в СУБД
    • REVOKE - отзыв ранее предоставленных разрешений
  • TCL
    • COMMIT Transaction - применение транзакции
    • ROLLBACK Transaction - откат всех изменений, сделанных в текущей транзакции

SQL и Python

Для работы с реляционной СУБД в Python можно использовать два подхода:

  • работать с библиотекой, которая соответствует конкретной СУБД, и использовать для работы с БД язык SQL
    • Например, для работы с SQLite используется модуль sqlite3
  • работать с , которая использует объектно-ориентированный подход для работы с БД
    • Например, SQLAlchemy
Назад: 18. Работа с базами данных
Дальше: SQLite