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 può essere simile alla seguente, dove "?" rappresenta il parametro per l'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). In genere, i parametri vengono usati come segnaposto nelle condizioni di ricerca per singole righe o per i 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)