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

Промяна на таблица и добавяне на УНИКАЛЕН ключ води до грешка

Вижте документацията за това как да добавите ограничение на таблица.

ALTER TABLE Animal ADD CONSTRAINT UQ_Animal_AnimalTypeId UNIQUE (AnimalType_id)

Изглежда, че AnimalType_id е чужд ключ, така че просто исках да проверя дали сте разбрали, че като направите тази колона уникална, вие правите връзката едно-едно - ще можете да имате само едно животно от всеки тип.

Тъй като получавате грешка при добавяне на уникалното ограничение, ще предложа, че всъщност искате външен ключ вместо уникално ограничение:

ALTER TABLE Animal
    ADD CONSTRAINT FK_Animal_AnimalType
    FOREIGN KEY
    (
        AnimalType_id
    )
    REFERENCES AnimalType
    (
        id
    )

Трябваше да отгатна името на таблицата AnimalType и името на нейната колона с първичен ключ - моля, променете ги, ако са неправилни.



  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:разлика между сканиране на индекс / търсене на индекс

  2. Кога трябва да използвам начални/крайни блокове и ключовата дума Go в SQL Server?

  3. SQL Server форматира десетичните знаци със запетаи

  4. Мониторинг на TempDB на SQL Server чрез използване на динамични изгледи за управление (DMV)

  5. Как да извлека десетични знаци при закръгляване на средна стойност в SQL