Funzione di lancio di Postgres Se esiste

Funzione di lancio di Postgres Se esiste
PostgreSQL è un sistema di gestione del database open source e il codice sorgente è disponibile con la licenza di PostgreSQL. Il database PostgreSQL come altri database contiene i dati in forma tabulare. E questi dati vengono modificati o aggiornati applicando loro più comandi ad essi.

Per gestire i dati o utilizzarli nelle circostanze di una determinata situazione, abbiamo alcuni contenitori di archiviazione che ottengono dati ed eseguono operazioni su di essi. Questi sono noti come funzioni o procedure memorizzate.

Funzione postgresql

Le funzioni postgresql sono divise in due funzioni principali. Questi sono:

Funzioni integrate

Queste funzioni sono presenti nel database PostgreSQL, al momento della configurazione del sistema di gestione del database e durante la connessione con il server. Puoi usarli solo usando il loro nome nel comando. Alcuni esempi comuni di funzioni integrate sono max (), min () e count () ecc.

Funzioni definite dall'utente

Queste sono le funzioni definite dall'utente. Queste funzioni non sono già presenti ma possono essere create solo al momento dell'introduzione del codice secondo lo scenario corrente. Puoi utilizzare le funzioni integrate al loro interno, ma nel complesso, queste funzioni funzionano solo quando vengono create manualmente. Alcuni esempi sono come get_result (), applic_interest (), ecc. In questo tutorial, parleremo di questi tipi di funzioni.

Funzione di caduta

Drop Function si occupa di rimozione della funzione già creata in PostgreSQL. Proprio come le tabelle, anche le funzioni vengono abbandonate o vengono troncate. Quindi, per comprendere il concetto di funzioni di rilascio se esistono, dobbiamo prima capire la creazione della funzione e il loro lavoro. Dopodiché, verremo a lasciarli cadere.

Creazione di funzioni di Postgres

Ora vedremo la sintassi per fare una funzione. Proprio come una tabella di PostgreSQL, useremo un comando Crea ma la procedura è diversa.

Sintassi

Crea la funzione name_of_function (argomenti)
Restituisce il tipo di dati
Lingua Psql
Come $ variabile_name $
DICHIARARE
dichiarazione;
(Dichiarazione variabile)
INIZIO
< function_body >
(logica)
Return variabile_name | valore
FINE;
$$

I parametri della sintassi sopra sono descritti come:

  • Name_of_function: questo parametro viene utilizzato per dare un nome alla funzione definita dall'utente. Questo è scritto dopo che le parole chiave creano funzione.
  • Argomenti: questa funzione contiene i parametri della funzione che verrà utilizzata all'interno della funzione.
  • Resto: questa funzione restituisce il valore in un tipo di dati specifico definito dopo la parola chiave di ritorno.
  • Lingua: questo definisce il linguaggio di programmazione utilizzato nella funzione.
  • Function_body: questa parte è la parte principale della funzione definita dall'utente in quanto contiene la logica o la condizione fatta dall'utente.

Abbiamo implementato il comando di creazione di funzioni sul dashboard PGadmin. Li considereremo anche sul guscio più avanti nell'articolo. Quindi, apri pGadmin, connettiti con il server e seleziona l'opzione Strumenti, quindi seleziona lo strumento query. Verrà aperta una finestra, scrivi il comando in quella parte.

Ora, considera un esempio in cui abbiamo creato una funzione per archiviare e restituire le informazioni dell'insegnante tra cui ID, nome e titolo dell'insegnante. Abbiamo scritto la logica principale del comando di creazione della funzione di seguito. L'intero codice è menzionato nell'immagine allegata.

Crea o sostituisci la funzione get_teacher_info ()
inizio
per Rec in Select
insegnante_id,
titolo,
(first_name || "|| last_name) :: varchar
dall'insegnante
INTERIRE INNIZIONI Teacher_Info Utilizzo (Teacher_id)
Soggetto interno di join usando (soggetto_id)
ordine per titolo
ritorno;
FINE;
$$

Le informazioni nella funzione Informazione dell'insegnante si uniscono a due tabelle che contengono i dati rilevanti per l'argomento e l'insegnante con soggetto e insegnante_id come parametro. Ora, eseguire il codice facendo clic sul pulsante Esegui in alto. Durante l'esecuzione, viene visualizzato un messaggio che la funzione viene creata correttamente.

Questo esempio di creazione di funzioni era senza l'uso di alcun argomento. Quindi ora creeremo di nuovo una funzione con lo stesso nome, ma la differenza è che la funzione accetterà un parametro con essa.

Quindi, questa è la differenza che discrimerà la nuova funzione da parte della precedente. Ecco perché viene creata un'altra funzione con lo stesso nome di quella precedente. Altrimenti, non può essere possibile creare due funzioni con un nome simile e argomenti simili.

Come tabelle e database, possiamo anche osservare i nomi delle funzioni nella barra di navigazione sinistra espandendo il server e i database; raggiungerai gli schemi del database. All'espansione dello schema, vedrai un'opzione "pubblica"; Questo ti porterà verso l'opzione funzione. Tutte le funzioni create sono elencate qui.

GOCCIOLARE Funzione

Per eliminare una funzione definita dall'utente dal database, utilizziamo un'istruzione drop. Questa affermazione è proprio come il comando usato per far cadere la tabella.

Sintassi

Funzione drop [se esiste] name_of_function (argomenti)
[Cascade | limitare];

Ora spiegheremo questi parametri e il loro utilizzo.

  • In primo luogo, specifichiamo il nome della funzione che vogliamo eliminare applicando l'istruzione drop. Questo è scritto dopo la funzione di rilascio della parola chiave.
  • In secondo luogo, utilizziamo un'opzione "se esistono", questo aiuta il database PostgreSQL a visualizzare un messaggio di un errore se la funzione specificata non è presente.
  • Terzo si occupa dell'elenco degli argomenti della funzione. Come abbiamo visto che le funzioni possono essere con o senza parametri, quindi PostgreSQL vuole conoscere la funzione che vogliamo rimuovere controllando gli argomenti che abbiamo richiesto.
  • La cascata e le opzioni di limite sono opzionali in base all'implementazione dell'istruzione di caduta condizione.

Useremo un'istruzione Drop sulla stessa funzione che abbiamo creato sopra senza alcun argomento.

>> Funzione drop get_teacher_info;

Questa affermazione produrrà un errore, poiché non è chiaro a PostgreSQL quale funzione scende, poiché abbiamo creato due funzioni con lo stesso nome con l'argomento specificato. La soluzione è utilizzare una parentesi vuota con la funzione che mostra parametri zero.

>> Drop funzione get_teacher_info ();

Questo funzionerà. Da due, ora una funzione viene lasciata indietro. L'uso del nome sarà sufficiente per eliminare la funzione.

>> Funzione drop get_teacher_info;

Oppure la seconda opzione è utilizzare il comando con il parametro per specificare direttamente la funzione.

Funzione di caduta nella shell PSQL

Simile alla funzione utilizzata in PGadmin, abbiamo creato una funzione qui.

>> Crea funzione get_house_price (price_from int, price_to int)
Restituisce int
Lingua Plpgsql
COME
$$
Dichiarare
House_Count Integer;
Inizio
Seleziona COUNT (*)
In House_Count
di casa
dove house_price tra price_from e price_to;
ritorna House_Count;
FINE;
$$;

Ora vedremo la funzione creata, mentre tutte le altre funzioni possono essere visualizzate utilizzando un comando PSQL. Questo comando porta l'elenco delle funzioni insieme al tipo di dati dello schema del nome e agli argomenti della funzione.

>> \ df

Per eliminare la funzione, ora useremo il comando drop con gli argomenti.

>> funzione di rilascio get_house_price (Price_from Integer, Price_to Integer);

Conclusione

L'articolo 'Postgres Drop Function' è implementato sul sistema di gestione del database PostgreSQL sia su PGADMIN DASHBOARD che anche su PSQL utilizzando Windows 10. In primo luogo, abbiamo creato una funzione per spiegare il funzionamento di una funzione. Quindi, il comando drop viene applicato alle funzioni in entrambi i modi, con o senza parametri.