Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Datenkontrollsprache | Einige Zusätzliche Themen
Fortgeschrittene Techniken in SQL
course content

Kursinhalt

Fortgeschrittene Techniken in SQL

Fortgeschrittene Techniken in SQL

1. Acid
2. Abfrageoptimierung.Indizes
3. Einige Zusätzliche Themen

book
Datenkontrollsprache

Data Control Language (DCL) ist ein Teil von SQL, der verwendet wird, um den Zugriff auf Daten zu steuern, die in einem relationalen Datenbankverwaltungssystem gespeichert sind.
DCL-Befehle befassen sich hauptsächlich mit der Gewährung oder dem Widerruf von Berechtigungen für Datenbankobjekte wie Tabellen, Ansichten und Schemata.

DCL-Befehle

Die beiden Hauptbefehle von DCL sind:

  1. GRANT: Dieser Befehl wird verwendet, um bestimmten Benutzern oder Rollen spezifische Berechtigungen zu erteilen;

  2. REVOKE: Dieser Befehl wird verwendet, um bestimmten Benutzern oder Rollen, denen zuvor Berechtigungen erteilt wurden, diese zu entziehen.

Berechtigungen

Objekte

Implementierung

Um einem bestimmten Benutzer einige Berechtigungen für ein Objekt in SQL zu gewähren, können wir die folgende Anweisung verwenden:

GRANT privileges
ON object
TO {user | role | PUBLIC};

Es gibt 3 Arten von Rollen in der DB, denen Sie einige Berechtigungen gewähren können:

  • user: Ein einzelner Datenbankbenutzer;
  • role: Eine Datenbankrolle, eine benannte Gruppe von Berechtigungen, die Benutzern zugewiesen werden können (z.B. admin, developer, analyst);
  • PUBLIC: Ein spezielles Schlüsselwort, das die angegebenen Berechtigungen allen Benutzern gewährt.

Wir können einem Benutzer eine Rolle mit der folgenden Anweisung zuweisen:

GRANT role TO user;

Schließlich können wir zuvor gewährte Berechtigungen mit der folgenden Anweisung widerrufen:

REVOKE privileges
ON object
FROM {user | role | PUBLIC};

Beispiel

Hier sind einige Beispiele, wie der GRANT-Befehl verwendet wird, um verschiedenen Rollen und Benutzern unterschiedliche Berechtigungen für die Tabellen bankaccounts und userlogs zuzuweisen.

-- Create role
CREATE ROLE bank_manager;

-- Grant privileges to bank_manager role
GRANT SELECT, INSERT, UPDATE, DELETE ON BankAccounts TO bank_manager;
GRANT SELECT, INSERT ON UserLogs TO bank_manager;

-- Create users
CREATE USER john WITH PASSWORD 'password123';
CREATE USER jane WITH PASSWORD 'password456';

-- Assign roles to users
GRANT bank_manager TO john;
GRANT bank_manager TO jane;

Nun können wir einige der gewährten Berechtigungen widerrufen:

-- Revoke privileges from bank_manager role
REVOKE UPDATE, DELETE ON BankAccounts FROM bank_manager;
REVOKE INSERT ON UserLogs FROM bank_manager;

-- Revoke bank_manager role from john
REVOKE bank_manager FROM john;
question mark

Welche Berechtigung erlaubt es einem Benutzer, Daten aus einer Tabelle zu lesen?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 3. Kapitel 6

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

course content

Kursinhalt

Fortgeschrittene Techniken in SQL

Fortgeschrittene Techniken in SQL

1. Acid
2. Abfrageoptimierung.Indizes
3. Einige Zusätzliche Themen

book
Datenkontrollsprache

Data Control Language (DCL) ist ein Teil von SQL, der verwendet wird, um den Zugriff auf Daten zu steuern, die in einem relationalen Datenbankverwaltungssystem gespeichert sind.
DCL-Befehle befassen sich hauptsächlich mit der Gewährung oder dem Widerruf von Berechtigungen für Datenbankobjekte wie Tabellen, Ansichten und Schemata.

DCL-Befehle

Die beiden Hauptbefehle von DCL sind:

  1. GRANT: Dieser Befehl wird verwendet, um bestimmten Benutzern oder Rollen spezifische Berechtigungen zu erteilen;

  2. REVOKE: Dieser Befehl wird verwendet, um bestimmten Benutzern oder Rollen, denen zuvor Berechtigungen erteilt wurden, diese zu entziehen.

Berechtigungen

Objekte

Implementierung

Um einem bestimmten Benutzer einige Berechtigungen für ein Objekt in SQL zu gewähren, können wir die folgende Anweisung verwenden:

GRANT privileges
ON object
TO {user | role | PUBLIC};

Es gibt 3 Arten von Rollen in der DB, denen Sie einige Berechtigungen gewähren können:

  • user: Ein einzelner Datenbankbenutzer;
  • role: Eine Datenbankrolle, eine benannte Gruppe von Berechtigungen, die Benutzern zugewiesen werden können (z.B. admin, developer, analyst);
  • PUBLIC: Ein spezielles Schlüsselwort, das die angegebenen Berechtigungen allen Benutzern gewährt.

Wir können einem Benutzer eine Rolle mit der folgenden Anweisung zuweisen:

GRANT role TO user;

Schließlich können wir zuvor gewährte Berechtigungen mit der folgenden Anweisung widerrufen:

REVOKE privileges
ON object
FROM {user | role | PUBLIC};

Beispiel

Hier sind einige Beispiele, wie der GRANT-Befehl verwendet wird, um verschiedenen Rollen und Benutzern unterschiedliche Berechtigungen für die Tabellen bankaccounts und userlogs zuzuweisen.

-- Create role
CREATE ROLE bank_manager;

-- Grant privileges to bank_manager role
GRANT SELECT, INSERT, UPDATE, DELETE ON BankAccounts TO bank_manager;
GRANT SELECT, INSERT ON UserLogs TO bank_manager;

-- Create users
CREATE USER john WITH PASSWORD 'password123';
CREATE USER jane WITH PASSWORD 'password456';

-- Assign roles to users
GRANT bank_manager TO john;
GRANT bank_manager TO jane;

Nun können wir einige der gewährten Berechtigungen widerrufen:

-- Revoke privileges from bank_manager role
REVOKE UPDATE, DELETE ON BankAccounts FROM bank_manager;
REVOKE INSERT ON UserLogs FROM bank_manager;

-- Revoke bank_manager role from john
REVOKE bank_manager FROM john;
question mark

Welche Berechtigung erlaubt es einem Benutzer, Daten aus einer Tabelle zu lesen?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 3. Kapitel 6
some-alt