Query con parametri (Visual Database Tools)

Si applica a:SQL Server

In alcuni casi potrebbe essere necessario creare una query da utilizzare più volte, specificando però ogni volta un valore diverso. Se, ad esempio, si eseguono di frequente delle query per individuare tutti i title_ids di un determinato autore, è possibile utilizzare la stessa query per tutte le richieste specificando però ogni volta un ID o un nome di autore diverso.

Per creare una query che può accettare valori diversi in momenti diversi, è necessario utilizzare i parametri. Un parametro è un segnaposto per un valore che verrà fornito durante l'esecuzione della query. Un'istruzione SQL con un parametro potrebbe essere simile alla seguente, dove "?" rappresenta il parametro relativo all'ID dell'autore:

SELECT title_id  
FROM titleauthor  
WHERE (au_id = ?)  

Possibili utilizzi dei parametri

È possibile usare i parametri come segnaposto per valori letterali (per valori di testo o numerici). Nella maggior parte dei casi i parametri vengono utilizzati come segnaposto all'interno di condizioni di ricerca per singole righe o per gruppi, ovvero nelle clausole WHERE o HAVING di un'istruzione SQL.

I parametri possono essere utilizzati nelle espressioni come segnaposto. Si supponga ad esempio di voler calcolare prezzi scontati specificando un valore di sconto diverso a ogni esecuzione della query. A tale scopo, è possibile utilizzare la seguente espressione:

(price * ?)  

Specifica di parametri denominati e non denominati

È possibile specificare due tipi di parametri: denominati e non denominati. Un parametro non denominato è un punto di domanda (?) che è possibile inserire in una posizione qualsiasi della query per richiedere o per sostituire un valore letterale. Se, ad esempio, si usa un parametro non denominato per cercare l'ID di un autore nella tabella titleauthor , l'istruzione risultante nel riquadro SQL potrebbe essere simile alla seguente:

SELECT title_id  
FROM titleauthor  
WHERE (au_id = ?)  

Al momento dell'esecuzione della query in Progettazione query e Progettazione viste, nella finestra di dialogo Parametri query viene visualizzato un punto interrogativo ("?") come nome del parametro.

In alternativa, è possibile assegnare un nome a un parametro. I parametri denominati risultano particolarmente utili quando in una query sono presenti più parametri. Se, ad esempio, si utilizzano parametri denominati per cercare il nome e il cognome di un autore in una tabella authors , l'istruzione risultante nel riquadro SQL potrebbe essere simile alla seguente:

SELECT au_id  
FROM authors  
WHERE au_fname = %first name% AND  
      au_lname = %last name%  

Suggerimento

Prima di creare una query con parametri denominati, è necessario definire i caratteri del prefisso e del suffisso.

Al momento dell'esecuzione della query in Progettazione query e Progettazione viste, nella finestra di dialogo Parametri query viene visualizzato un elenco di parametri denominati.

Vedi anche

Eseguire query mediante parametri (Visual Database Tools)
Tipi di query supportati (Visual Database Tools)
Procedure per la progettazione di query e viste (Visual Database Tools)