Condividi tramite


Procedura: definire espressioni di vincoli CHECK

Quando si associa un vincolo CHECK a una tabella o colonna, è necessario includere un'espressione Transact-SQL. Per informazioni dettagliate su questa operazione, vedere Procedura: associare un nuovo vincolo CHECK a una tabella o a una colonna.

È possibile creare un'espressione di vincolo semplice per verificare i dati in base a una condizione semplice oppure creare un'espressione complessa, con operatori booleani, per verificare i dati in base a diverse condizioni. Si supponga ad esempio che nella tabella authors sia presente una colonna zip in cui è richiesta una stringa di 5 caratteri. La semplice espressione di vincolo riportata di seguito impone l'immissione solo di numeri a 5 cifre:

zip LIKE '[0-9][0-9][0-9][0-9][0-9]'

In alternativa, si supponga che nella tabella sales sia presente una colonna qty in cui è richiesto un valore maggiore di 0. Questo vincolo di esempio garantisce che vengano accettati solo valori positivi:

qty > 0

Nota

Alcuni database dispongono di funzionalità differenti per i vincoli CHECK. Vedere la documentazione del database per informazioni dettagliate relative al funzionamento del database con vincoli CHECK.

Nota

È possibile che le finestre di dialogo e i comandi di menu visualizzati siano diversi da quelli descritti nella Guida a seconda delle impostazioni attive o dell'edizione del programma. Per modificare le impostazioni, scegliere Importa/Esporta impostazioni dal menu Strumenti. Per ulteriori informazioni, vedere Gestione delle impostazioni.

Per definire un'espressione di vincolo

  1. Creare un nuovo vincolo CHECK. Per ulteriori informazioni su come effettuare questa operazione, vedere Procedura: associare un nuovo vincolo CHECK a una tabella o a una colonna.

  2. In Vincoli CHECK digitare un'espressione nella finestra di dialogo Espressione vincolo CHECK utilizzando la seguente sintassi:

    {constant
    column_name
    function
    (subquery)}
    [{operator
    AND
    OR
    NOT}
    {constant
    column_name
    function
    (subquery)}]
    

    Nota

    Questa sintassi è specifica di Microsoft SQL Server. Per informazioni dettagliate, vedere la documentazione del database.

    La sintassi Transact-SQL è costituita dai seguenti parametri:

    Parametro

    Descrizione

    constant

    Valore letterale, ad esempio dati numerici o caratteri. I caratteri devono essere racchiusi tra virgolette semplici (').

    column_name

    Specifica una colonna.

    function

    Funzione predefinita. Per informazioni dettagliate sulle funzioni, vedere la documentazione di SQL Server.

    operator

    Operatore aritmetico, bit per bit, di confronto o operatore di stringa. Per informazioni dettagliate sugli operatori, vedere la documentazione di SQL Server.

    AND

    Si utilizza nelle espressioni booleane per connettere due espressioni. Viene restituito un risultato quando entrambe le espressioni sono true.

    Quando un'istruzione contiene sia AND che OR, il parametro AND verrà elaborato per primo. È possibile modificare l'ordine di esecuzione utilizzando le parentesi.

    OR

    Utilizzato nelle espressioni booleane per connettere due o più condizioni. Viene restituito un risultato quando una delle due condizioni è true.

    Quando un'istruzione contiene sia AND che OR, OR verrà elaborato dopo AND. È possibile modificare l'ordine di esecuzione utilizzando le parentesi.

    NOT

    Nega qualsiasi espressione booleana (che può includere parole chiavi come LIKE, NULL, BETWEEN, IN ed EXISTS).

    Quando un'istruzione utilizza più operatori logici, NOT verrà elaborato per primo. È possibile modificare l'ordine di esecuzione utilizzando le parentesi.

Vedere anche

Riferimenti

Finestra di dialogo Vincoli CHECK

Concetti

Espressioni nelle query