Sind DDL-Befehle Autocommit?
Sind DDL-Befehle Autocommit?

Video: Sind DDL-Befehle Autocommit?

Video: Sind DDL-Befehle Autocommit?
Video: SQL Tabellenerzeugung mit DDL - SQL 2 2024, November
Anonim

Ist ( DDL ) Datenmanipulierungssprache AnweisungenAutocommit ? Nein. Nur die DDL (Datendefinitionssprache) Aussagen wie erstellen, ändern, löschen, abschneiden sind Autocommit.

Sind DML-Befehle außerdem Autocommit?

Standardmäßig a DML Eine Anweisung, die ohne expliziten Start einer Transaktion ausgeführt wird, wird bei Erfolg automatisch festgeschrieben oder bei Fehler am Ende der Anweisung zurückgesetzt. Dieses Verhalten heißt Autocommit . Dieses Verhalten wird mit dem AUTOCOMMIT Parameter. DDL Aussagen sind immer automatisch festgeschrieben.

Anschließend stellt sich die Frage, was Autocommit in SQL ist. Im Rahmen des Datenmanagements, Autocommit ist eine Betriebsart einer Datenbankverbindung. Die Alternative zu Autocommit Modus (nicht- Autocommit ) bedeutet, dass die SQL Die Clientanwendung selbst ist für die Ausgabe von Befehlen zur Transaktionsinitiierung (Starttransaktion) und Beendigung (Commitor-Rollback) verantwortlich.

Erfordert DDL dann einen Commit?

TRUNCATE ist ein DDL Befehl, damit es keine explizite braucht verpflichten weil der Aufruf ein implizites. ausführt verpflichten . Aus Sicht des Systemdesigns ist eine Transaktion eine Geschäftseinheit. Es kann aus einer einzelnen DML-Anweisung oder mehreren davon bestehen. Egal: nur vollständige Transaktionen erfordern COMMIT.

Was passiert, wenn Autocommit aktiviert ist?

Wenn AUTOCOMMIT ist eingestellt auf 1 wird jede SQL-Anweisung als vollständige Transaktion betrachtet und standardmäßig festgeschrieben, wenn sie beendet ist. Wenn AUTOCOMMIT ist eingestellt auf 0, verhält sich die nachfolgende Reihe von Anweisungen wie eine Transaktion, und es wird keine Transaktion festgeschrieben, bis eine explizite COMMIT-Anweisung ausgegeben wird.

Empfohlen: