Ändra främmande nyckelrelationer
gäller för: SQL Server 2016 (13.x) och senare versioner
Azure SQL Database
Azure SQL Managed Instance
SQL-databas i Microsoft Fabric
Du kan ändra sekundärnyckelsidan för en relation i SQL Server med hjälp av SQL Server Management Studio eller Transact-SQL. När du ändrar en tabells sekundärnyckel ändras vilka kolumner som är relaterade till kolumner i primärnyckeltabellen.
i det här avsnittet
Innan du börjar:
Om du vill ändra en främmande nyckel med hjälp av:
Innan du börjar
Begränsningar och restriktioner
Den nya sekundärnyckelkolumnen måste matcha datatypen och storleken på den primära nyckelkolumn som den relaterar till, med följande undantag:
En char kolumn eller sysname kolumn kan relatera till en varchar kolumn.
En binär kolumn kan relatera till en kolumn.
En aliasdatatyp kan relatera till dess bastyp.
Säkerhet
Behörigheter
Kräver ALTER-behörighet på tabellen.
Använda SQL Server Management Studio
Ändra en främmande nyckel
I Object Explorer, expandera tabellen med den främmande nyckeln och expandera sedan Nycklar.
Högerklicka på den främmande nyckel som ska ändras och välj Ändra.
I dialogrutan Utländska nyckelrelationer kan du göra följande ändringar.
vald relation
Visar en lista över befintliga relationer. Välj en relation för att visa dess egenskaper i rutnätet till höger. Om listan är tom har inga relationer definierats för tabellen.Lägg till
Skapa en ny relation. Specifikationerna för tabeller och kolumner måste anges innan relationen blir giltig.Ta bort
Ta bort den markerade relationen i listan Markerade relationer. Om du vill avbryta tillägget av en relation använder du den här knappen för att ta bort relationen.allmän kategori
Expandera för att visa kontroll av befintliga data vid skapandet eller återaktiveringen av tabeller och kolumner enligt specifikationer ,, och.kontrollera befintliga data vid skapande eller återaktivering av
Kontrollera alla befintliga data i tabellen innan begränsningen skapades eller återaktiverades, mot villkoret.Tabeller och Kolumnspecifikationer Kategori
Klicka för att expandera och visa vilka kolumner och tabeller som funkar som främmande nyckel och primär (eller unik) nyckel i relationen. Om du vill redigera eller definiera dessa värden klickar du på ellipsknappen (...) till höger om egenskapsfältet.grundtabell för främmande nyckel
Visar vilken tabell som innehåller kolumnen som fungerar som en sekundärnyckel i den valda relationen.Främmande nyckelkolumner
Visar vilken kolumn som fungerar som en främmande nyckel i den valda relationen.Primär/Unik Nyckelbas-tabell
Visar vilken tabell som innehåller kolumnen som fungerar som en primär (eller unik) nyckel i den valda relationen.primära/unika nyckelkolumner
Visar vilken kolumn som fungerar som en primär (eller unik) nyckel i den valda relationen.identitetskategori
Expandera om du vill visa egenskapsfälten för Name och Description.Namn
Visar namnet på relationen. När en ny relation skapas får den ett standardnamn baserat på tabellen i det aktiva fönstret i Table Designer. Du kan ändra namnet när som helst.Beskrivning
Beskriv relationen. Om du vill skriva en mer detaljerad beskrivning klickar du på Beskrivning och klickar sedan på ellipsen (...) som visas till höger om egenskapsfältet. Detta ger ett större område där du kan skriva text.Tabelldesignerkategori
Expandera för att visa information för Kontrollera befintliga data vid skapande eller återaktivering av och Tillämpa för replikering.Tillämpa för replikering
Anger om villkoret ska tillämpas när en replikeringsagent utför en infogning, uppdatering eller borttagning i den här tabellen.tillämpa referensnyckelbegränsning
Ange om ändringar tillåts till data för kolumnerna i relationen om dessa ändringar skulle påverka integriteten negativt för utrikesnyckelrelationen. Välj Ja om du inte vill tillåta sådana ändringar och välj Nej om du vill tillåta dem.INSERT- och UPDATE-specifikationskategori
Expandera för att visa information för Borttagningsregel och Uppdatera regel för relationen.Ta bort regel
Ange vad som händer om en användare försöker ta bort en rad med data som ingår i en sekundärnyckelrelation:Ingen åtgärd Ett felmeddelande meddelar användaren att borttagningen inte är tillåten och att DELETE återställs.
Cascade Tar bort alla rader som innehåller data relaterad till en främmande nyckelrelation. Ange inte CASCADE om tabellen ska ingå i en sammanslagningspublikation som använder logiska poster.
Ange Null Anger värdet till null om alla sekundärnyckelkolumner för tabellen kan acceptera null-värden.
Ange standard Anger värdet till det standardvärde som definierats för kolumnen om alla främmande nyckel-kolumner för tabellen har standardvärden definierade för sig.
Uppdateringsregel
Ange vad som händer om en användare försöker uppdatera en rad med data som ingår i en sekundärnyckelrelation:Ingen åtgärd Ett felmeddelande meddelar användaren att uppdateringen inte är tillåten och att UPPDATERINGEN återställs.
Cascade Uppdaterar alla rader som innehåller data som ingår i sekundärnyckelrelationen. Ange inte CASCADE om tabellen ska ingå i en sammanslagningspublikation som använder logiska poster.
Ange Null Anger värdet till null om alla sekundärnyckelkolumner för tabellen kan acceptera null-värden.
Ange standard Anger värdet till det standardvärde som definieras för kolumnen om alla sekundärnyckelkolumner för tabellen har definierats som standard.
På menyn Arkiv klickar du på Sparatabellnamn.
Använda Transact-SQL
Ändra en extern nyckel
Om du vill ändra en FOREIGN KEY-begränsning med hjälp av Transact-SQL måste du först ta bort den befintliga foreign key-begränsningen och sedan återskapa den med den nya definitionen. Mer information finns i Ta bort sekundärnyckelrelationer och Skapa sekundärnyckelrelationer.