Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Уникално ограничение в рамките на група записи, където някои стойности са еднакви

Започнах нов отговор, тъй като повредих лошо първия.

Изглежда, че бихте могли да разрешите проблема, като преосмислите малко дизайна на вашата маса, за да избегнете грубата сила като ограничение за прилагане на вашето бизнес правило.

Какво ще кажете за премахване на колоната IsPrimary от MyTable и добавяне на колона PrimaryPersonID към другата таблица, която препраща към основното лице?

По този начин самата структура ще наложи, че 1 и само 1 запис в FK таблицата е основен за всеки човек.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Възстановете база данни в SQL Server 2017

  2. Преобразувайте BINARY, съхранен като VARCHAR, в BINARY

  3. Защо не Невалидно име на колона XYZ грешка в подзаявка; въпреки че името на колоната не е в таблицата на подзаявката?

  4. Как мога да разбера кога попълването на пълен текстов индекс на SQL приключи?

  5. Възстановяване на база данни от .mdf и .ldf файлове на SQL Server 2008