Ich versuche, einige Update-Skripte auf meiner Datenbank zu laufen und ich erhalte den folgenden Fehler:SQL mit der FOREIGN KEY-Einschränkung in Konflikt gerieten
The ALTER TABLE statement conflicted with the FOREIGN KEY constraint "FK_UPSELL_DT_AMRNO_AFMKTG_REF". The conflict occurred in database "ECOMVER", table "dbo.AFFILIATE_MKTG_REF", column 'AMRNO'.
Ich verwende das folgende Skript:
ALTER TABLE [dbo].[UPSELL_DATA] WITH CHECK ADD
CONSTRAINT [FK_UPSELL_DT_AMRNO_AFMKTG_REF] FOREIGN KEY
(
[AMRNO]
) REFERENCES [dbo].[AFFILIATE_MKTG_REF] (
[AMRNO]
)
GO
AMRNO ist eine PK in Tabelle AFFILIATE_MKTG_REF.
Außerdem habe ich versucht, die Fremdschlüsselbeziehung mit der Option Tabelle ändern in SQL Management Studio zu erstellen, und ich habe den gleichen Fehler. Ich bin mir nicht sicher, wonach ich suchen sollte?
Alle Vorschläge würden sehr geschätzt werden.
Durch Hinzufügen von WITH NOCHECK konnte ich die FK-Relation erstellen. Dies scheint nicht das Richtige zu tun ... –
Dies wird im Grunde die Einschränkung "nicht vertrauenswürdig" machen (http://www.mssqltips.com/tip.asp?tip=1539) - im Grunde, dies wird nicht überprüft Stellen Sie sicher, dass die Einschränkung für Daten gilt, die bereits in den Tabellen vorhanden sind, und stattdessen nur nach neu eingefügten Datensätzen suchen. – chadhoc