Denetim kısıtlamalarını oluşturmak
Bir veya daha fazla sütunda bulunan kabul edilebilir veri değerleri belirtmek için tablo check kısıtlaması oluşturabilir SQL Server 2012kullanarak SQL Server Management Studioya Transact-SQL.
Bu Konuda
Başlamadan Önce
Güvenlik
Yeni bir onay kısıtlama kullanarak oluşturmak için:
SQL Server Management Studio
Transact-SQL
Başlamadan Önce
Güvenlik
İzinler
Tablo üzerinde alter izinleri gerektirir.
[Top]
SQL Server Management Studio Kullanarak
Yeni denetim kısıtlaması oluşturmak için
İçinde Object Explorer, check kısıtlaması eklemek için sağ tıklatın istediğiniz tabloyu genişletmek kısıtlamaları ve tıklayın Yeni bir kısıtlama.
İçinde Check kısıtlamaları iletişim kutusunda, tıklayın ifade alan ve üç nokta tıklatın (...).
İçinde Check kısıtlaması ifade iletişim kutusuna, denetim kısıtlaması için sql ifadelerini yazın. Örneğin, girişlerini sınırlandırmak için SellEndDatesütununda Producttablo ya da tarihine eşit veya daha büyük bir değere SellStartDatesütun veya null değeri, türü:
SellEndDate >= SellStartDate OR SellEndDate IS NULL
Veya girişleri gerektirecek şekilde zip 5 basamak için sütun türü:
zip LIKE '[0-9][0-9][0-9][0-9][0-9]'
[!NOT]
Herhangi bir sayısal olmayan kısıtlama değerlerini tek tırnak işaretleri (') içine aldığınızdan emin olun.
Click OK.
İçinde kimlik kategorisi, check kısıtlaması değiştirmek ve açıklamasını (genişletilmiş özellik) kısıtlaması ekleyin.
İçinde Tablo Tasarımcısı kategorisi ayarlayabilirsiniz kısıtlamayı uygulandığında.
1-3600.
Evet, aşağıdaki alanları seçin:
Kısıtlamayı oluşturmadan önce varolan verilere sınırlama sınamak
Varolan verilere oluşturma veya etkinleştirme denetleyin
Kısıtlamayı bu tablo üzerinde bir yineleme işlemi oluşur güncelleştirildiğinde uygulamak
Çoğaltma zorla
Kısıtlamayı bu tablodaki bir satır eklendiğinde veya güncelleştirildiğinde uygulamak
INSERT'ler ve UPDATE'ler için zorla
Tıklayın yakın.
[Top]
Transact-SQL'i Kullanma
Yeni denetim kısıtlaması oluşturmak için
İçinde Object Explorer, örneğine bağlanmak Veritabanı Altyapısı.
Standart çubuğunda Yeni sorgu.
Kopyalama ve aşağıdaki örnek sorgu penceresine yapıştırın ve tıkırtı Execute.
ALTER TABLE dbo.DocExc ADD ColumnD int NULL CONSTRAINT CHK_ColumnD_DocExc CHECK (ColumnD > 10 AND ColumnD < 50); GO -- Adding values that will pass the check constraint INSERT INTO dbo.DocExc (ColumnD) VALUES (49); GO -- Adding values that will fail the check constraint INSERT INTO dbo.DocExc (ColumnD) VALUES (55); GO
Daha fazla bilgi için, bkz. ALTER TABLE (Transact-SQL).
[Top]