Cosa sono le stored procedure SQL e come si creano?
Una stored procedure è un batch di istruzioni SQL create e archiviate in un database. È possibile riutilizzare una stored procedure più e più volte.
Una stored procedure può accettare parametri, eseguire una query e restituire risultati. Molti utenti possono chiamare una procedura memorizzata e diverse applicazioni possono chiamarla con valori di parametro diversi.
Quali sono i vantaggi dell’utilizzo delle stored procedure?
Oltre a consentire a più utenti e applicazioni di riutilizzarla, una stored procedure presenta altri vantaggi.
- È facile da modificare. È possibile modificare una stored procedure quando necessario e questi aggiornamenti verranno applicati a tutti gli utenti. Inoltre, non è necessario ridistribuire l’applicazione quando si modifica la stored procedure.
- Riduce il traffico di rete perché il server passa solo il nome della procedura sulla rete e non l’intera query.
- Migliora la sicurezza del database poiché gli utenti non hanno accesso diretto alle tabelle. Per apportare modifiche, devono chiamare la stored procedure. Ciò impedisce gli attacchi SQL injection poiché gli utenti non possono scrivere direttamente nelle tabelle sottostanti.
Un motore di database come MySQL ha molte funzionalità di sicurezza di cui dovresti essere a conoscenza.
Sintassi della creazione di una stored procedure in SQL Server
La sintassi per la creazione di una stored procedure è la seguente:
CREATE PROCEDURE procedure_name
AS
sql_statement
GO;
Eseguire questo comando per eseguire la stored procedure.
EXEC procedure_name;
Esempio di una semplice stored procedure in SQL Server
Di seguito è riportato un esempio di stored procedure che seleziona tutti gli articoli da un database di articoli.
CREATE PROCEDURE All_Articles
AS
SELECT * FROM Article
GO;
Questo è un semplice esempio, ma puoi fare molto di più con le stored procedure come accettare i parametri e aggiornare i record.
Come creare una stored procedure che accetti parametri
Ad esempio, modifica la procedura memorizzata semplice in modo che accetti un numero come parametro e utilizzalo per restituire i post con un numero di visualizzazioni superiore al numero.
CREATE PROCEDURE Popular_Articles(@views int)
AS
SELECT * FROM Article
WHERE views_count >= @views_count
GO;
Utilizzare questo comando per eseguire la stored procedure con un parametro.
EXEC Popular_Articles 300;
La procedura restituisce gli articoli il cui numero di visualizzazioni è superiore a 300.
Impara SQL prima di utilizzare le stored procedure
Le stored procedure consentono di riutilizzare un gruppo di istruzioni SQL. Migliorano inoltre la sicurezza del database, riducono il traffico di rete e sono facili da modificare.
Imparare a conoscere le stored procedure è quindi importante, ma è necessario prima avere una solida conoscenza di SQL.
Lascia un commento