Stored procedure per SQL Server Express

Microsoft SQL Server Express è una versione gratuita di Microsoft SQL Server, che è una risorsa per l'amministrazione e la creazione di database e l'esecuzione dell'analisi dei dati. Gran parte delle funzionalità della versione non gratuita di SQL Server si trova in SQL Server Express, incluso lo strumento di gestione visiva SQL Management Studio e la possibilità di utilizzare le stored procedure.

Lingua delle procedure memorizzate

Le stored procedure sono query SQL che gli utenti di SQL Server possono salvare e quindi richiamare per l'esecuzione successiva. Le caratteristiche principali delle stored procedure includono la loro programmabilità e la loro capacità di accettare parametri. Le stored procedure sono scritte nel linguaggio di programmazione di Transact SQL, utilizzato per eseguire query sul database. Le stored procedure assumono la forma di altre istruzioni SQL scritte in transact SQL, accettando anche i parametri.

Creazione di stored procedure

In Microsoft SQL Server, è possibile creare una nuova stored procedure facendo clic con il pulsante destro del mouse su una cartella di stored procedure esistenti, denominata \"Stored procedure,\" nel riquadro Esplora oggetti. SQL Server crea questa cartella automaticamente quando viene creato un nuovo database e la inserisce qui nella gerarchia delle cartelle: [dbaseName]>[\"Programmabilità\"]>[\"Stored Procedures\"].

Le nuove stored procedure per dbaseName vengono archiviate all'esterno della sottocartella \"System Stored Procedures,\" che si trova in [\"Stored Procedures\"]. Durante la creazione di un nuovo database, SQL Server riempie la cartella delle procedure memorizzate di sistema con gli script per la manutenzione del database. Gli utenti di SQL Server non devono utilizzare queste stored procedure di sistema per crearne di proprie.

Una volta che la stored procedure è stata inizialmente creata, si apre una nuova scheda di query. La scheda contiene un modello o una query di esempio, che l'utente modifica quindi in base ai propri scopi.

Procedura di esempio

Un esempio di stored procedure è il seguente:

USE [test] GO CREATE PROCEDURE [dbo].[mysp_selectstuff] AS -- Aggiunto SET NOCOUNT ON per evitare che set di risultati aggiuntivi -- interferiscano con le istruzioni SELECT. -- IMPOSTA NOCOUNT ON GO

-- Inserisci qui le istruzioni per la procedura SELECT * from dbo.Movies GO GO EXEC [dbo].[mysp_selectstuff] GO GO DROP PROCEDURE [dbo].[mysp_selectstuff] GO GO

Struttura di una stored procedure

È pratica comune capitalizzare le istruzioni SQL, per differenziarle dai componenti del database su cui stanno operando le istruzioni. I commenti iniziano con la stringa \"--\". Questi non hanno effetto sulla query. In questo esempio, il database interrogato si chiama \"test\" e la tabella all'interno di quel database è Movies. Il prefisso \"dbo\" viene aggiunto a Film per separarlo da altre tabelle che potrebbero avere lo stesso nome. La query completa seleziona semplicemente tutti i campi per tutti i record nella tabella Film.

Esecuzione di stored procedure

Le istruzioni GO sono come le istruzioni RUN nei programmi BASIC: dicono all'interprete SQL di eseguire le istruzioni che le precedono. L'istruzione EXEC esegue la query e DROP PROCEDURE rilascia la query dopo l'esecuzione, operazione necessaria prima di eseguire nuovamente la query. La query immessa viene effettivamente eseguita da SQL Server quando si preme F5 o il pulsante Esegui della barra degli strumenti.