Üç tablo var:MS SQL Server çapraz tablo kısıtlaması
1) Uygulamaları (AppId, adı)
2) Ekran (ScreenId, adı)
3) İlişkisi (AppId, ScreenId)
Şimdi ilgili tabloya bazı kısıtlamalar uygulamak istiyorum: Aynı ekran birden fazla uygulamaya atanabilir, ancak aynı uygulamaya sahip aynı ada sahip iki ekran olamaz.
Screen.Name'i ilişkisel tabloya ekleyebileceğimi ve sonra AppId ve Screen.Name üzerinde PK oluşturabildiğimi biliyorum, ancak Screen.Name değişebileceğinden böyle bir çözüm istemiyorum.
Böyle bir kısıtlamaya ulaşmak için hangi ek seçeneklere sahibim?
Böyle bir şey olup olmadığını merak ettim. :) Tetikleyiciden çok daha iyi. :) – Jonathan
Bu yöntem ekran adını değiştirirken verileri "doğrulayacaktır" ya da yalnızca görünüme erişirken verileri kontrol edecek mi? –
@AlexDn - Evet, bu, alttaki tablolarda değişiklik yapıldığında kısıtlamayı zorlar. Bağlandığım sayfaya giderseniz, dizinlenmiş görünümlerde çok fazla kısıtlamanın olduğunu fark edeceksiniz. Bu kısıtlamaların çoğu vardır * çünkü * temel tablolardaki her işlem için gerekli bakım etkinliğinin verimli bir şekilde gerçekleşmesine izin verirler. –