Встречается на собеседованиях • сегодня

Как удалить все записи из таблицы в БД

Для удаления всех записей из таблицы в SQL можно использовать команду TRUNCATE TABLE или DELETE FROM. Вот различия и примеры:

sql
-- Быстрое удаление всех записей (нельзя откатить, сбрасывает автоинкремент)
TRUNCATE TABLE table_name;

-- Удаление с возможностью WHERE и транзакций (можно откатить)
DELETE FROM table_name;

В Python с использованием SQLAlchemy:

python
from sqlalchemy import create_engine, MetaData, Table

engine = create_engine('sqlite:///mydb.db')
metadata = MetaData()
my_table = Table('my_table', metadata, autoload_with=engine)

# Способ 1
with engine.connect() as conn:
    conn.execute(my_table.delete())
    conn.commit()

# Способ 2 (если нужен TRUNCATE)
with engine.connect() as conn:
    conn.execute(text("TRUNCATE TABLE my_table"))
    conn.commit()

Важно: TRUNCATE работает быстрее, но не поддерживает WHERE и не вызывает триггеры. DELETE медленнее, но более гибкий. Для больших таблиц предпочтительнее TRUNCATE.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы