CREATE TABLE [dbo].[user](
[userID] [int] IDENTITY(1,1) NOT NULL,
[fcode] [int] NULL,
[scode] [int] NULL,
[dcode] [int] NULL,
[name] [nvarchar](50) NULL,
[address] [nvarchar](50) NULL,
CONSTRAINT [PK_user_1] PRIMARY KEY CLUSTERED
(
[userID] ASC
)
) ON [PRIMARY]
GO
Wie füge ich eine eindeutige Einschränkung für Spalten fcode, scode, dcode
mit t-sql
und / oder hinzu management studio
? fcode, scode, dcode
muss zusammen einzigartig sein.
sql-server
sql-server-2008
ssms
loviji
quelle
quelle
Antworten:
Mithilfe der Einschränkungsdefinition bei der Tabellenerstellung können Sie eine oder mehrere Einschränkungen angeben, die sich über mehrere Spalten erstrecken. Die aus der Technet-Dokumentation vereinfachte Syntax lautet:
Daher wäre die Definition der resuting-Tabelle:
quelle
Wenn die Tabelle bereits in der Datenbank erstellt wurde, können Sie später mithilfe dieser SQL-Abfrage eine eindeutige Einschränkung hinzufügen:
quelle
ADD CONSTRAINT ucCodes UNIQUE NONCLUSTERED
?Dies kann auch in der GUI erfolgen. Hier ist ein Beispiel zum Hinzufügen einer mehrspaltigen eindeutigen Einschränkung zu einer vorhandenen Tabelle.
Klicken Sie in jedem Fenster auf OK und Sie sind fertig.
quelle
quelle