Condividi tramite


Procedura: Definizione di espressioni di vincoli CHECK (Visual Database Tools)

Quando si associa un vincolo CHECK a una tabella o colonna, è necessario includere un'espressione SQL. Per informazioni dettagliate su questa operazione, vedere Procedura: Collegamento di un nuovo vincolo CHECK a una tabella o a una colonna (Visual Database Tools).

È 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

Per definire un'espressione di vincolo

  1. Creare un nuovo vincolo CHECK. Per ulteriori informazioni su come eseguire questa operazione, vedere Procedura: Collegamento di un nuovo vincolo CHECK a una tabella o a una colonna (Visual Database Tools).

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

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

    La sintassi 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 Funzioni di sistema (Transact-SQL).

    operator

    Operatore aritmetico, bit per bit, di confronto o operatore di stringa. Per informazioni dettagliate sugli operatori, vedere Utilizzo di operatori nelle espressioni.

    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.