Topic outline

  • Stored Procedures

    1. Definition und Nutzung:
       - Eine Stored Procedure ist eine Sammlung von SQL-Befehlen, die als Einheit ausgeführt werden kann.
       - Sie werden verwendet, um eine Reihe von SQL-Anweisungen zu gruppieren und auszuführen.
    2. Rückgabewert:
       - Stored Procedures müssen keinen Wert zurückgeben. Sie können jedoch mehrere Werte über OUT-Parameter oder INOUT-Parameter zurückgeben.
    3. Einsatz von DML-Befehlen:
       - Stored Procedures können DML-Befehle wie INSERT, UPDATE, DELETE und SELECT enthalten und ausführen.
       - Sie können auch DDL-Befehle (Data Definition Language) wie CREATE, ALTER und DROP enthalten.
    4. Aufruf:
       - Stored Procedures werden mit dem `CALL` Befehl aufgerufen.
    5. Transaktionen:
       - Stored Procedures können Transaktionen initiieren, committen oder zurücksetzen, was sie ideal für komplexe Geschäftslogik macht.
    6. Seiteneffekte:
       - Stored Procedures können Seiteneffekte haben, wie das Ändern von Datenbankzuständen.

  • Funktionen

    1. Definition und Nutzung:
       - Eine Funktion ist eine vordefinierte Operation, die einen Wert basierend auf den Eingabewerten zurückgibt.
       - Funktionen werden oft verwendet, um Berechnungen durchzuführen oder Werte zu formatieren.
    2. Rückgabewert:
       - Funktionen müssen einen Wert zurückgeben. Dies kann ein skalaren Wert oder ein Tabellentyp sein.
    3. Einsatz von DML-Befehlen:
       - Funktionen dürfen in der Regel keine DML-Befehle wie INSERT, UPDATE oder DELETE enthalten. Sie dürfen nur SELECT-Befehle verwenden.
       - MySQL hat hier strikte Einschränkungen, um die Deterministik und Seiteneffekte zu minimieren.
    4. Aufruf:
       - Funktionen können in SQL-Anweisungen wie SELECT, WHERE oder FROM verwendet werden. Sie können auch als Teil von Ausdrücken aufgerufen werden.
    5. Transaktionen:
       - Funktionen können keine Transaktionen initiieren, committen oder zurücksetzen.
    6. Seiteneffekte:
       - Funktionen sollten keine Seiteneffekte haben und nur Berechnungen basierend auf den Eingabewerten durchführen.

     

  • Topic 3

  • Topic 4