Udostępnij za pośrednictwem


Tworzenie ograniczeń sprawdzania

Dotyczy:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceSQL Database w usłudze Microsoft Fabric

Ograniczenie sprawdzania można utworzyć w tabeli, aby określić wartości danych, które są dopuszczalne w co najmniej jednej kolumnie w programie SQL Server za pomocą programu SQL Server Management Studio lub Transact-SQL. Aby uzyskać więcej informacji na temat dodawania ograniczeń kolumn, zobacz ALTER TABLE column_constraint.

Aby uzyskać więcej informacji, zobacz Unikatowe ograniczenia i sprawdź ograniczenia.

Uwagi

Aby wykonywać zapytania dotyczące istniejących ograniczeń sprawdzania, użyj widoku katalogu systemu sys.check_constraints.

Uprawnienia

Wymagane są uprawnienia ALTER do tabeli.

Korzystanie z programu SQL Server Management Studio

  1. W Eksploratorze obiektów rozwiń tabelę, do której chcesz dodać ograniczenie sprawdzania, kliknij prawym przyciskiem myszy Ograniczenia i wybierz pozycję Nowe ograniczenie.

  2. W oknie dialogowym Sprawdź Ograniczenia wybierz pole Wyrażenie, a następnie wybierz wielokropek (...).

  3. W oknie dialogowym Check Constraint Expression wpisz wyrażenia SQL dla ograniczenia CHECK. Aby na przykład ograniczyć wpisy w kolumnie SellEndDate tabeli Product do wartości większej lub równej dacie w kolumnie SellStartDate lub jest wartością NULL, wpisz:

    SellEndDate >= SellStartDate
    

    Możesz też wymagać, aby wpisy w kolumnie zip mieć pięć cyfr, wpisz:

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

    Notatka

    Upewnij się, że wszystkie wartości nieliczbowe są ujęte w pojedyncze znaki cudzysłowu (').

  4. Wybierz pozycję OK.

  5. W kategorii Identity możesz zmienić nazwę ograniczenia sprawdzania i dodać opis (właściwość rozszerzoną) dla ograniczenia.

  6. W kategorii Table Designer można określić, kiedy ograniczenie jest wymuszane.

    Akcja Wybierz Yes dla następujących opcji
    Przetestuj ograniczenie dotyczące danych, które istniały przed utworzeniem ograniczenia Sprawdź istniejące dane podczas tworzenia lub włączania
    Wymuszanie ograniczenia przy każdym wystąpieniu operacji replikacji w tej tabeli wymuszanie dla replikacji
    Wymuszanie ograniczenia za każdym razem, gdy wiersz tej tabeli zostanie wstawiony lub zaktualizowany Wymuszaj dla wstawień i aktualizacji
  7. Wybierz Zamknij.

Korzystanie z Transact-SQL

  1. W Eksploratorze obiektów nawiąż połączenie z wystąpieniem silnika bazy danych.

  2. Na standardowym pasku narzędzi wybierz pozycję Nowe zapytanie.

  3. Skopiuj poniższy przykład i wklej go w oknie zapytania, a następnie wybierz pozycję Wykonaj.

    Najpierw utwórz ograniczenie.

    ALTER TABLE dbo.DocExc
    ADD ColumnD INT NULL CONSTRAINT CHK_ColumnD_DocExc CHECK (
        ColumnD > 10
        AND ColumnD < 50
    );
    GO
    

    Aby przetestować ograniczenie, najpierw dodaj wartości, które spełniają warunek sprawdzania.

    INSERT INTO dbo.DocExc (ColumnD) VALUES (49);
    

    Następnie spróbuj dodać wartości, które nie spełniają ograniczenia sprawdzania.

    INSERT INTO dbo.DocExc (ColumnD) VALUES (55);