Ist TRUNCATE eine DML-Anweisung?
-
02-10-2019 - |
Frage
Können wir klassifizieren / sagen, dass TRUNCATE gehört / fallen unter DML-Anweisung?
Überprüfen Sie hier PostgreSQL TRUNCATE Kompatibilität.
Hinweis: TRUNCATE ist Teil der SQL-Standard ANSI SQL 2008 - F200
Lösung
PostgreSQL
Ich würde sagen, es ist eine Aussage DML in PostgreSQL: PostgreSQL hat eine TRUNCATE Trigger aber PostgreSQL nicht DDL-Trigger haben. Es kann also nicht eine DDL-Anweisung sein.
Sie erwirbt eine ACCESS EXCLUSIVE-Sperre auf jedem Tisch auf sie tätig ist und es ist nicht MVCC-sicher, aber es ist transactionsafe und Sie können ein Rollback.
Die Fähigkeit, Feuer Auslöser für TRUNCATE ist eine PostgreSQL-Erweiterung von der SQL-Standard.
Andere Tipps
Wie TRUNCATE manipuliert Daten und ändert sich nicht Definition , ich sehe es klar als DML-Anweisung.