Postgres Drop -Funktion, falls vorhanden

Postgres Drop -Funktion, falls vorhanden
PostgreSQL ist ein Open-Source-Datenbankverwaltungssystem, und der Quellcode ist unter der Lizenz von PostgreSQL verfügbar. PostgreSQL -Datenbank wie andere Datenbanken enthält Daten im tabellarischen Formular. Und diese Daten werden geändert oder aktualisiert, indem mehrere Befehle auf sie angewendet werden.

Um Daten zu verwalten oder sie unter den Umständen einer bestimmten Situation zu verwenden, haben wir einige Speichercontainer, die Daten erhalten und Vorgänge ausführen. Diese sind als die Funktionen oder die gespeicherten Verfahren bezeichnet.

PostgreSQL -Funktion

PostgreSQL -Funktionen sind in zwei Hauptfunktionen unterteilt. Diese sind:

Integrierte Funktionen

Diese Funktionen sind in der PostgreSQL -Datenbank vorhanden, zum Zeitpunkt der Konfiguration des Datenbankverwaltungssystems und beim Verbinden mit dem Server. Sie können sie verwenden, indem Sie ihren Namen nur im Befehl verwenden. Einige häufige Beispiele für integrierte Funktionen sind max (), min () und count () usw.

Benutzerdefinierte Funktionen

Dies sind die Funktionen, die vom Benutzer definiert werden. Diese Funktionen sind nicht bereits vorhanden, können jedoch nur zum Zeitpunkt der Codeeinführung gemäß dem aktuellen Szenario erstellt werden. Sie können integrierte Funktionen in sich verwenden, aber insgesamt funktionieren diese Funktionen nur, wenn sie manuell erstellt werden. Einige Beispiele sind wie get_result (), apply_interest () usw. In diesem Tutorial werden wir über diese Art von Funktionen sprechen.

Drop -Funktion

Die Drop -Funktion befasst sich mit der Entfernung der bereits erstellten Funktion in PostgreSQL. Genau wie Tische werden auch Funktionen fallen gelassen oder abgeschnitten. Um das Konzept der Drop -Funktionen zu verstehen, wenn sie existieren, müssen wir zunächst die Funktionserstellung und ihre Arbeit verstehen. Danach werden wir dazu kommen, sie abzuwerfen.

Postgres Funktionserstellung

Jetzt werden wir die Syntax sehen, um eine Funktion zu machen. Genau wie eine Tabelle in PostgreSQL werden wir einen Befehl erstellen, aber die Prozedur ist anders.

Syntax

Funktion name_of_function erstellen (Argumente)
Gibt den Datentyp zurück
Sprache PSQL
Als $ variable_name $
ERKLÄREN
Erklärung;
( variable Aussage )
START
< function_body >
( Logik )
Return variable_name | Wert
ENDE;
$$

Parameter der obigen Syntax werden als:

  • NAME_OF_FUNKTION: Dieser Parameter wird verwendet, um der benutzerdefinierten Funktion einen Namen anzugeben. Dies wird geschrieben, nachdem die Schlüsselwörter erstellen können. Funktion erstellen.
  • Argumente: Diese Funktion enthält die Parameter der Funktion, die in der Funktion verwendet werden.
  • Rückgabe: Diese Funktion gibt den Wert in einem bestimmten Datentyp zurück, der nach dem Rückgabe -Keyword definiert ist.
  • Sprache: Dies definiert die Programmiersprache, die in der Funktion verwendet wird.
  • Funktion_Body: Dieser Teil ist der Hauptteil der benutzerdefinierten Funktion, da er die Logik oder die vom Benutzer hergestellte Bedingung enthält.

Wir haben den Befehl Funktionserstellung auf dem Pgadmin -Dashboard implementiert. Wir werden sie später im Artikel auch auf der Hülle berücksichtigen. Öffnen Sie also Pgadmin, verbinden Sie sich mit dem Server und wählen Sie die Option Tools aus und wählen Sie dann das Abfragetool aus. Ein Fenster wird geöffnet, schreiben Sie den Befehl in diesen Teil.

Betrachten Sie nun ein Beispiel, in dem wir eine Funktion erstellt haben, um die Informationen des Lehrers zu speichern und zurückzugeben, einschließlich Lehrer -ID, Name und Titel. Wir haben unten die Hauptlogik des Befehls für Funktionserstellung geschrieben. Der gesamte Code wird im angehängten Bild erwähnt.

Funktion erstellen oder ersetzen die Funktion get_teacher_info ()
Start
für rec in select
lehrer_id,
Titel,
(First_name || "|| last_name) :: varchar
vom Lehrer
innere Beitrittslehrer_info mit (lehrer_id)
Innere Join -Betreff verwendet (Subjekt_ID)
Bestellung nach Titel
zurückkehren;
Ende;
$$

Die Informationen in der Lehrerfunktion verbinden zwei Tabellen, die die für das Fach relevanten Daten enthalten, und der Lehrer mit Subjekt_ID und lehrer_id als Parameter. Führen Sie nun den Code aus, indem Sie oben auf die Schaltfläche Ausführen klicken. Bei der Ausführung wird eine Nachricht angezeigt, dass die Funktion erfolgreich erstellt wird.

Dieses Beispiel für die Funktionserstellung war ohne die Verwendung eines Arguments. Jetzt werden wir wieder eine Funktion mit demselben Namen erstellen, aber der Unterschied besteht darin, dass die Funktion einen Parameter damit akzeptiert.

Dies ist der Unterschied, der die neue Funktion von der vorherigen unterscheidet. Deshalb wird eine andere Funktion mit dem gleichen Namen wie der vorherige erstellt. Andernfalls kann es nicht möglich sein, zwei Funktionen mit einem ähnlichen Namen und ähnlichen Argumenten zu erstellen.

Wie Tabellen und Datenbanken können wir auch die Namen von Funktionen in der linken Navigationsleiste beobachten, indem wir den Server und die Datenbanken erweitern. Sie erreichen die Schemata der Datenbank. Bei der Erweiterung des Schemas sehen Sie eine Option "öffentlich". Dies führt Sie zur Funktionoption. Alle erstellten Funktionen sind hier aufgeführt.

TROPFEN Funktion

Um eine benutzerdefinierte Funktion aus der Datenbank abzugeben, verwenden wir eine Drop-Anweisung. Diese Aussage ist genau wie der Befehl zum Ablegen der Tabelle.

Syntax

Drop -Funktion [wenn existiert] name_of_function (Argumente)
[Kaskade | beschränken];

Jetzt werden wir diese Parameter und ihre Verwendung erklären.

  • Erstens geben wir den Namen der Funktion an, die wir löschen möchten, indem wir die Drop -Anweisung anwenden. Dies ist nach der Dolpelfunktion der Schlüsselwort 'geschrieben.
  • Zweitens verwenden wir eine Option "Wenn existieren". Dies hilft der PostgreSQL -Datenbank, eine Meldung eines Fehlers anzuzeigen, wenn die angegebene Funktion nicht vorhanden ist.
  • Der dritte befasst sich mit der Liste der Argumente der Funktion. Wie wir gesehen haben, dass Funktionen mit oder ohne Parameter sein können, möchte PostgreSQL die Funktion wissen, die wir entfernen möchten, indem wir die Argumente überprüfen, die wir angewendet haben.
  • Die Kaskade und die Einschränkungsoptionen sind entsprechend der Implementierung der Bedingungsabfallanweisung optional.

Wir werden eine Drop -Anweisung zu derselben Funktion verwenden, die wir oben ohne Argument erstellt haben.

>> Drop -Funktion get_Teacher_info;

Diese Anweisung erzeugt einen Fehler, da es nicht klar ist, dass postgreSQL die Funktionen fungiert, da wir mit dem angegebenen Argument zwei gleichnamige Funktionen erstellt haben. Die Lösung besteht darin, eine leere Klammer mit der Funktion zu verwenden, die Nullparameter zeigt.

>> Drop -Funktion get_Teacher_info ();

Das wird funktionieren. Von zwei wird jetzt eine Funktion zurückgelassen. Die Verwendung des Namens reicht aus, um die Funktion fallen zu lassen.

>> Drop -Funktion get_Teacher_info;

Oder die zweite Option besteht darin, den Befehl mit dem Parameter zu verwenden, um die Funktion direkt anzugeben.

Tropfenfunktion in PSQL Shell

Ähnlich wie bei der in Pgadmin verwendeten Funktion haben wir hier eine Funktion erstellt.

>> Funktion erstellen get_house_price (price_from int, price_to int)
Gibt int int
Sprache PLPGSQL
als
$$
Erklären
House_Count Integer;
Start
Wählen Sie Count (*)
in House_Count
aus dem Haus
wo House_price zwischen Price_From und Price_to;
return House_Count;
Ende;
$$;

Jetzt werden wir die erstellte Funktion sehen, während alle anderen Funktionen mithilfe eines PSQL -Befehls angezeigt werden können. Dieser Befehl bringt die Liste der Funktionen zusammen mit dem Namensschema -Datentyp und den Argumenten der Funktion zusammen.

>> \ df

Um die Funktion fallen zu lassen, werden wir jetzt den Drop -Befehl mit den Argumenten verwenden.

>> Drop -Funktion get_house_price (Price_From Integer, Price_to Integer);

Abschluss

Der Artikel 'Postgres Drop -Funktion' ist auf sowohl PGADMIN -Dashboards als auch in PSQL mit Windows 10 im PostGresQL -Datenbankverwaltungssystem implementiert. Erstens haben wir eine Funktion erstellt, um die Arbeit einer Funktion zu erklären. Anschließend wird der DROP -Befehl auf die Funktionen auf beide Arten angewendet, mit oder ohne Parameter.