Heim > Datenbank > MySQL-Tutorial > DDL, DML, DCL und TCL in SQL verstehen: Wichtige Unterschiede erklärt

DDL, DML, DCL und TCL in SQL verstehen: Wichtige Unterschiede erklärt

Linda Hamilton
Freigeben: 2024-12-20 03:17:10
Original
467 Leute haben es durchsucht

Understanding DDL, DML, DCL, and TCL in SQL: Key Differences Explained

Unterschied zwischen DDL, DML, DCL und TCL

SQL-Befehle werden basierend auf ihrer Funktionalität in Kategorien unterteilt. Hier finden Sie eine Erklärung der Unterschiede zwischen DDL, DML, DCL und TCL sowie Beispiele:


1. DDL (Datendefinitionssprache)

Zweck:

DDL-Befehle werden verwendet, um die Struktur von Datenbankobjekten wie Tabellen, Schemata, Indizes und Ansichten zu definieren und zu verwalten.

Hauptmerkmale:

  • Konzentriert sich auf die Definition und Änderung des Datenbankschemas.
  • Mit DDL-Befehlen vorgenommene Änderungen sind dauerhaft und werden automatisch festgeschrieben.

Beispiele:

  • ERSTELLEN: Zum Erstellen einer Tabelle oder eines Datenbankobjekts.
  CREATE TABLE students (
      id INT PRIMARY KEY,
      name VARCHAR(100),
      age INT
  );
Nach dem Login kopieren
Nach dem Login kopieren
  • ALTER: Um eine vorhandene Tabelle zu ändern.
  ALTER TABLE students ADD COLUMN grade CHAR(1);
Nach dem Login kopieren
Nach dem Login kopieren
  • DROP: Zum Löschen eines Datenbankobjekts.
  DROP TABLE students;
Nach dem Login kopieren
Nach dem Login kopieren
  • TRUNCATE: Um alle Datensätze in einer Tabelle zu löschen.
  TRUNCATE TABLE students;
Nach dem Login kopieren
Nach dem Login kopieren

Wichtige Punkte:

  • DDL-Befehle definieren die Struktur der Datenbank, nicht ihre Daten.
  • Änderungen automatisch festschreiben (kein Rollback möglich).

2. DML (Datenmanipulationssprache)

Zweck:

DML-Befehle werden zum Bearbeiten von in den Datenbanktabellen gespeicherten Daten verwendet, z. B. zum Abrufen, Einfügen, Aktualisieren oder Löschen von Daten.

Hauptmerkmale:

  • Konzentriert sich eher auf Datenoperationen als auf die Struktur der Datenbank.
  • Änderungen werden nicht automatisch übernommen; Sie können zurückgesetzt werden.

Beispiele:

  • EINFÜGEN: Zum Hinzufügen neuer Datensätze.
  INSERT INTO students (id, name, age, grade)
  VALUES (1, 'Alice', 20, 'A');
Nach dem Login kopieren
Nach dem Login kopieren
  • UPDATE: Um bestehende Datensätze zu ändern.
  UPDATE students
  SET age = 21
  WHERE id = 1;
Nach dem Login kopieren
Nach dem Login kopieren
  • LÖSCHEN: Zum Entfernen von Datensätzen.
  DELETE FROM students
  WHERE id = 1;
Nach dem Login kopieren

Wichtige Punkte:

  • DML-Befehle werden verwendet, um mit den Daten in der Datenbank zu arbeiten.
  • Änderungen erfordern eine explizite Verpflichtung mit einem COMMIT-Befehl.

3. DCL (Data Control Language)

Zweck:

DCL-Befehle werden verwendet, um den Zugriff auf die Datenbank zu steuern und sicherzustellen, dass nur autorisierte Benutzer bestimmte Vorgänge ausführen können.

Hauptmerkmale:

  • Konzentriert sich auf Sicherheit und Benutzerberechtigungen.
  • Gewährt oder widerruft den Zugriff auf Datenbankobjekte.

Beispiele:

  • GRANT: Zum Erteilen von Berechtigungen.
  CREATE TABLE students (
      id INT PRIMARY KEY,
      name VARCHAR(100),
      age INT
  );
Nach dem Login kopieren
Nach dem Login kopieren
  • REVOKE: Zum Entfernen von Berechtigungen.
  ALTER TABLE students ADD COLUMN grade CHAR(1);
Nach dem Login kopieren
Nach dem Login kopieren

Wichtige Punkte:

  • DCL-Befehle sind für die Aufrechterhaltung der Datenbanksicherheit von entscheidender Bedeutung.
  • Wird von Datenbankadministratoren zur Verwaltung des Benutzerzugriffs verwendet.

4. TCL (Transaction Control Language)

Zweck:

TCL-Befehle verwalten Transaktionen und stellen sicher, dass Datenänderungen konsistent gehandhabt werden und bei Bedarf festgeschrieben oder zurückgesetzt werden können.

Hauptmerkmale:

  • Konzentriert sich auf die Aufrechterhaltung der Integrität von Transaktionen.
  • Nützlich in Szenarien, in denen mehrere DML-Vorgänge als eine Einheit ausgeführt werden müssen.

Beispiele:

  • COMMIT: Um Änderungen dauerhaft zu speichern.
  DROP TABLE students;
Nach dem Login kopieren
Nach dem Login kopieren
  • ROLLBACK: Um in der aktuellen Transaktion vorgenommene Änderungen rückgängig zu machen.
  TRUNCATE TABLE students;
Nach dem Login kopieren
Nach dem Login kopieren
  • SAVEPOINT: Zum Festlegen eines Punktes innerhalb einer Transaktion für teilweise Rollbacks.
  INSERT INTO students (id, name, age, grade)
  VALUES (1, 'Alice', 20, 'A');
Nach dem Login kopieren
Nach dem Login kopieren
  • TRANSAKTION EINSTELLEN: Um Eigenschaften für eine Transaktion zu definieren.
  UPDATE students
  SET age = 21
  WHERE id = 1;
Nach dem Login kopieren
Nach dem Login kopieren

Wichtige Punkte:

  • TCL-Befehle werden verwendet, um die Datenkonsistenz bei komplexen Vorgängen zu verwalten.
  • Änderungen werden mit COMMIT abgeschlossen oder mit ROLLBACK rückgängig gemacht.

Vergleichstabelle

Category Purpose Examples Changes Committed Focus
DDL Defines database structure CREATE, ALTER, DROP Auto-committed Database schema management
DML Manipulates data in the database INSERT, UPDATE, DELETE Not auto-committed Data within tables
DCL Controls access to the database GRANT, REVOKE Auto-committed User permissions and security
TCL Manages database transactions COMMIT, ROLLBACK, SAVEPOINT Requires explicit action Transaction consistency
Kategorie Zweck Beispiele Änderungen vorgenommen Fokus DDL Definiert die Datenbankstruktur ERSTELLEN, ÄNDERN, ENTFERNEN Automatisch festgeschrieben Datenbankschemaverwaltung DML Manipuliert Daten in der Datenbank EINFÜGEN, AKTUALISIEREN, LÖSCHEN Nicht automatisch festgeschrieben Daten in Tabellen DCL Steuert den Zugriff auf die Datenbank GEWÄHREN, WIDERRUFEN Automatisch festgeschrieben Benutzerberechtigungen und Sicherheit TCL Verwaltet Datenbanktransaktionen COMMIT, ROLLBACK, SAVEPOINT Erfordert explizite Aktion Transaktionskonsistenz

Fazit

Das Verständnis der Unterschiede zwischen DDL, DML, DCL und TCL ist für eine effiziente Datenbankverwaltung unerlässlich. Jede Kategorie erfüllt eine bestimmte Rolle und stellt sicher, dass Datenbanken effektiv strukturiert, gesichert und manipuliert werden und gleichzeitig die Datenintegrität gewahrt bleibt.

Hallo, ich bin Abhay Singh Kathayat!
Ich bin ein Full-Stack-Entwickler mit Fachwissen sowohl in Front-End- als auch in Back-End-Technologien. Ich arbeite mit einer Vielzahl von Programmiersprachen und Frameworks, um effiziente, skalierbare und benutzerfreundliche Anwendungen zu erstellen.
Sie können mich gerne unter meiner geschäftlichen E-Mail-Adresse erreichen: kaashshorts28@gmail.com.

Das obige ist der detaillierte Inhalt vonDDL, DML, DCL und TCL in SQL verstehen: Wichtige Unterschiede erklärt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage