Condividi tramite


Query con parametri (Visual Database Tools)

si applica a:SQL Server

In alcuni casi si vuole creare una query che è possibile usare più volte, ma con un valore diverso ogni volta. Ad esempio, è possibile eseguire spesso una query per trovare tutte le title_ids scritte da un autore. È possibile eseguire la stessa query per ogni richiesta, ad eccezione del fatto che l'ID o il nome dell'autore sarebbero diversi ogni volta.

Per creare una query che può avere valori diversi in momenti diversi, usare i parametri nella query. Un parametro è un segnaposto per un valore 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 = ?)  

Dove è possibile usare i parametri

È possibile usare i parametri come segnaposto per i valori letterali, sia per il testo che per i valori 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.

È possibile usare i parametri come segnaposto nelle espressioni. Ad esempio, è possibile calcolare i prezzi scontate specificando un valore di sconto diverso ogni volta che si esegue una query. A tale scopo, è possibile specificare l'espressione seguente:

(price * ?)  

Specificare parametri senza nome e nominali

È possibile specificare due tipi di parametri: non nominati e nominati. Un parametro senza nome è un punto interrogativo (?) inserito in qualsiasi punto della query che si desidera richiedere o sostituire un valore letterale. Ad esempio, se si usa un parametro senza nome 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 = ?)  

Quando si esegue la query nel Designer di Query e Visualizzazione, la finestra di dialogo Parametri query viene visualizzata con "?" come nome del parametro.

In alternativa, è possibile assegnare un nome a un parametro. I parametri denominati sono particolarmente utili se sono presenti più parametri in una query. Ad esempio, se si usano parametri denominati per cercare il nome e il cognome di un autore nella 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 di prefisso e suffisso.

Quando si esegue la query in Progettazione Query e Visualizzazione, viene visualizzata la finestra di dialogo Parametri query con un elenco di parametri denominati.

Vedere anche

Query con parametri (Visual Database Tools)
Tipi di Query Supportati (Visual Database Tools)
Progettazione di Query e Viste Argomenti di Supporto (Visual Database Tools)