1. INSERT (добавление), UPDATE (обновление), DELETE (удаление), SELECT (выборка, часто относят к DML), MERGE (слияние).
2. В одном INSERT: INSERT INTO table (col1, col2) VALUES (1,'a'), (2,'b'), (3,'c');
3. Обновятся все строки таблицы.
4. DELETE FROM table_name; или TRUNCATE TABLE table_name; (быстрее, но без условий).
5. TRUNCATE — DDL, сбрасывает таблицу (нельзя откатить в некоторых СУБД без транзакции), быстрее, сбрасывает автоинкремент. DELETE — DML, удаляет построчно, можно с WHERE, можно откатить, не сбрасывает автоинкремент.
6. Транзакция — группа операций, выполняемых как единое целое (ACID). Нужна для согласованности, отката при ошибках, блокировок.
7. Через UPDATE ... FROM ... WHERE (PostgreSQL, SQL Server) или UPDATE ... JOIN ... (MySQL) или подзапрос: UPDATE t1 SET col = (SELECT col FROM t2 WHERE t2.id = t1.id);
8. MERGE (или REPLACE/INSERT ... ON DUPLICATE) — обновляет/вставляет данные одной командой. Применяется при синхронизации таблиц, UPSERT-операциях.
9. Использовать транзакции, внешние ключи (FOREIGN KEY), каскадные обновления/удаления (ON UPDATE CASCADE и др.), блокировки, проверки в коде.
10. PRIMARY KEY, UNIQUE, FOREIGN KEY, CHECK, NOT NULL, DEFAULT, триггеры, ограничения на уровне столбцов/таблиц..