Как выполнить DELETE запрос в SQLAlchemy?

Пользователь

от jaylen.trantow , в категории: Python , 8 месяцев назад

Как выполнить DELETE запрос в SQLAlchemy?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от loyal , 6 месяцев назад

@jaylen.trantow 

Чтобы выполнить DELETE запрос в SQLAlchemy, вы можете использовать метод delete() объекта Table, который вы хотите изменить. Например, если вы хотите удалить строки из таблицы my_table, вы можете выполнить следующий код:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
from sqlalchemy import create_engine, Table, Column, Integer, MetaData

engine = create_engine('sqlite:///mydatabase.db', echo=True)
metadata = MetaData()
my_table = Table('my_table', metadata,
    Column('id', Integer, primary_key=True),
    Column('name', String),
    Column('age', Integer)
)

# Создаем соединение к базе данных
conn = engine.connect()

# Выполняем DELETE запрос
delete_query = my_table.delete().where(my_table.c.age == 30)
conn.execute(delete_query)


В этом примере мы создаем объект my_table, который представляет таблицу в нашей базе данных. Затем мы создаем соединение к базе данных и используем метод delete() для указания, что мы хотим удалить строки из таблицы my_table. Мы используем метод where() для указания условия, при котором строки должны быть удалены. В нашем случае мы удаляем строки, где значение столбца age равно 30. Наконец, мы выполняем запрос, используя метод execute() объекта соединения.