Disabilitazione di vincoli di chiave esterna con le istruzioni INSERT e UPDATEDisable Foreign Key Constraints with INSERT and UPDATE Statements

QUESTO ARGOMENTO SI APPLICA A:sìSQL Server (a partire dalla versione 2016)sìDatabase SQL di AzuresìAzure SQL Data Warehouse sìParallel Data Warehouse THIS TOPIC APPLIES TO: yesSQL Server (starting with 2016)yesAzure SQL DatabaseyesAzure SQL Data Warehouse yesParallel Data Warehouse

È possibile disabilitare un vincolo di chiave esterna durante le transazioni INSERT e UPDATE in SQL Server 2017SQL Server 2017 tramite SQL Server Management StudioSQL Server Management Studio o Transact-SQLTransact-SQL.You can disable a foreign key constraint during INSERT and UPDATE transactions in SQL Server 2017SQL Server 2017 by using SQL Server Management StudioSQL Server Management Studio or Transact-SQLTransact-SQL. Usare questa opzione se si è sicuri che i nuovi dati violeranno il vincolo esistente o se il vincolo si applica solo ai dati già presenti nel database.Use this option if you know that new data will violate the existing constraint or if the constraint applies only to the data already in the database.

Contenuto dell'argomentoIn This Topic

Prima di iniziareBefore You Begin

Limitazioni e restrizioniLimitations and Restrictions

Dopo aver disabilitato questi vincoli, gli inserimenti o gli aggiornamenti successivi della colonna non saranno convalidati in base alle condizioni del vincolo.After you disable these constraints, future inserts or updates to the column will not be validated against the constraint conditions.

SicurezzaSecurity

AutorizzazioniPermissions

È necessario disporre dell'autorizzazione ALTER per la tabella.Requires ALTER permission on the table.

Utilizzo di SQL Server Management StudioUsing SQL Server Management Studio

Per disabilitare un vincolo di chiave esterna per le istruzioni INSERT e UPDATETo disable a foreign key constraint for INSERT and UPDATE statements

  1. In Esplora oggettiespandere la tabella contenente il vincolo, quindi espandere la cartella Chiavi .In Object Explorer, expand the table with the constraint and then expand the Keys folder.

  2. Fare clic con il pulsante destro del mouse sul vincolo e selezionare Modifica.Right-click the constraint and select Modify.

  3. Nella griglia in Progettazione tabellefare clic su Attiva vincolo della chiave esterna , quindi scegliere No nel menu a discesa.In the grid under Table Designer, click Enforce Foreign Key Constraint and select No from the drop-down menu.

  4. Scegliere Chiudi.Click Close.

Utilizzo di Transact-SQLUsing Transact-SQL

Per disabilitare un vincolo di chiave esterna per le istruzioni INSERT e UPDATETo disable a foreign key constraint for INSERT and UPDATE statements

  1. In Esplora oggetticonnettersi a un'istanza del Motore di databaseDatabase Engine.In Object Explorer, connect to an instance of Motore di databaseDatabase Engine.

  2. Sulla barra Standard fare clic su Nuova query.On the Standard bar, click New Query.

  3. Copiare e incollare gli esempi seguenti nella finestra Query, quindi fare clic su Esegui.Copy and paste the following examples into the query window and click Execute.

    USE AdventureWorks2012;  
    GO  
    ALTER TABLE Purchasing.PurchaseOrderHeader  
    NOCHECK CONSTRAINT FK_PurchaseOrderHeader_Employee_EmployeeID;  
    GO  
    

    Per altre informazioni, vedere ALTER TABLE (Transact-SQL).For more information, see ALTER TABLE (Transact-SQL).