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

Sql грешка при актуализация:Операторът UPDATE е в конфликт с ограничението FOREIGN KEY

Тази грешка се среща, когато първичният ключ на таблица е актуализиран, но е посочен от външен ключ от друга таблица и специфичната актуализация е зададена на Без действие. Без действие е опцията по подразбиране.

Ако това е вашият случай и не е зададено действие за операцията за актуализиране, можете да промените дефиницията на външния ключ на Cascade.

Щракнете с десния бутон върху вашия външен ключ и изберете Промяна . В диалоговия прозорец Взаимоотношения на външния ключ под спецификите INSERT и UPDATE задайте правилото UPDATE на Cascade:

Можете също да зададете правилото с помощта на T-SQL:

ALTER TABLE YourTable
DROP Constraint Your_FK
GO

ALTER TABLE YourTable
ADD CONSTRAINT [New_FK_Constraint]
FOREIGN KEY (YourColumn) REFERENCES ReferencedTable(YourColumn)
ON DELETE CASCADE ON UPDATE CASCADE
GO 

Надявам се това да помогне



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Неуспешно преобразуване при преобразуване от символен низ в уникален идентификатор

  2. Как да създадем свързания сървър за SQL Server 2008, където имаме база данни от 2000 и 2005 г.

  3. Как да направите колона чувствителна към главни и малки букви в sql 2005 или 2008

  4. SQL Server 2008 R2 HASHBYTES SHA2 връща null

  5. Как да преместя таблица в схема в T-SQL