Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (Deutsch) » SQL Anywhere Server - SQL-Benutzerhandbuch » Gespeicherte Prozeduren und Trigger » Prozeduren, Trigger und Batches verwenden » Einführung in Prozeduren

 

Prozeduren erstellen

In Sybase Central enthält der Assistent zum Erstellen von Prozeduren die Option, Prozedurvorlagen zu verwenden. Alternativ können Sie Interactive SQL benutzen, um eine CREATE PROCEDURE-Anweisung zum Erstellen einer Prozedur auszuführen. Sie müssen die DBA- oder RESOURCE-Berechtigung haben, um eine Prozedur zu erstellen.

♦  So erstellen Sie eine neue Prozedur (Sybase Central)
  1. Verbinden Sie sich mit DBA-Berechtigung oder Ressourcenberechtigung mit der Datenbank.

  2. Doppelklicken Sie im linken Fensterausschnitt auf Prozeduren und Funktionen.

  3. Wählen Sie Datei » Neu » Prozedur.

  4. Befolgen Sie die Anweisungen des Assistenten zum Erstellen von Prozeduren.

  5. Klicken Sie im rechten Fensterausschnitt auf das Register SQL und vervollständigen Sie den Prozedurcode.

    Die neue Prozedur erscheint in Prozeduren und Funktionen.

Beispiel

Das folgende einfache Beispiel erstellt eine Prozedur namens "NewDepartment", die einen INSERT-Vorgang in der Tabelle "Departments" der SQL Anywhere-Beispieldatenbank vornimmt, um eine neue Abteilung zu erstellen.

CREATE PROCEDURE NewDepartment(
   IN id INT,
   IN name CHAR(35),
   IN head_id INT )
BEGIN
   INSERT
   INTO Departments ( DepartmentID,
       DepartmentName, DepartmentHeadID )
   VALUES ( id, name, head_id );
END;

Der Hauptteil einer Prozedur besteht aus einer zusammengesetzten Anweisung. Die zusammengesetzte Anweisung startet mit BEGIN und wird mit END abgeschlossen. Im Fall von "NewDepartment" ist die zusammengesetzte Anweisung eine einzelne INSERT-Anweisung, die zwischen die Anweisungen BEGIN und END gesetzt ist.

Parameter für Prozeduren können als IN, OUT oder INOUT markiert werden. Standardmäßig sind Parameter INOUT-Parameter. Alle Parameter der Prozedur "NewDepartment" sind IN-Parameter, da sie nicht von der Prozedur geändert werden. Sie sollten Parameter auf IN setzen, wenn sie nicht benutzt werden, um Werte an den Aufrufer zu liefern.

Temporäre Prozeduren

Um eine temporäre Prozedur zu erstellen, müssen Sie die Anweisung CREATE TEMPORARY PROCEDURE verwenden, bei der es sich um eine Erweiterung der Anweisung CREATE PROCEDURE handelt. Temporäre Prozeduren werden nicht permanent in der Datenbank gespeichert. Sie werden gelöscht, wenn die Verbindung beendet wird oder wenn sie ausdrücklich entfernt werden. Weitere Hinweise finden Sie unter CREATE PROCEDURE-Anweisung (Webdienste).

Entfernte Prozeduren

Um eine entfernte Prozedur zu erstellen, müssen Sie über mindestens einen Fremdserver verfügen. Weitere Hinweise finden Sie unter:

Siehe auch