Frage : sql-Spalte, die eine einzigartige Kenn-Nummer darstellt

Wir haben eine Tabelle mit einer Spalte, die eine einzigartige Kenn-Nummer [Indexnummer] darstellt.  Wir verursachten einen EINZIGARTIGEN NONCLUSTERED INDEX DER SCHAFFUNG-auf ihm und wir möchten ein contraint addieren, das die Bestimmungsspalte als sein Default-Wert nimmt.  Wie können wir dies tun?

if existiert (* von dbo.sysobjects vorwählen in dem Identifikation = object_id (N'[dbo]. [ATable] ') und OBJECTPROPERTY (Identifikation, N'IsUserTable') = 1)
drop Tabelle [dbo]. [ATable]
GO

SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

CREATE TABELLE [dbo]. [ATable] (
[Identifikation] [int] IDENTITÄT (1.1) NICHT UNGÜLTIG,
[IName] [nvarchar] (500) NICHT NULL,
[Indexnummer] [nvarchar] (50) NICHT NULL,
PRIMÄRSCHLÜSSEL DER BEGRENZUNGS-[PK_ATable] GESAMMELTES
(
[Identifikation] ASC
) MIT (PAD_INDEX = WEG, STATISTICS_NORECOMPUTE = WEG, IGNORE_DUP_KEY = WEG, ALLOW_ROW_LOCKS = AN, ALLOW_PAGE_LOCKS = AN, FILLFACTOR = 90) AUF [PRIMÄR]
) AUF [PRIMÄR]

GO


ALTER TABELLE [dbo]. [ATable] MIT NOCHECK
RÜCKSTELLUNG DER BEGRENZUNGS-[DF_ATable_IName] ('') FÜR [IName]
GO

HINZUFÜGEN VERURSACHEN EINZIGARTIGEN NONCLUSTERED INDEX [UIX_ATable_INumber] AN [dbo]. [ATable] ([Indexnummer]) AUF [PRIMÄR]
GO

Antwort : sql-Spalte, die eine einzigartige Kenn-Nummer darstellt

Sie konnten einen AUSLÖSER für EINSATZ verwenden, der dieses Feld zum Wert von Identifikation aktualisierte, wenn er UNGÜLTIG ist.
Weitere Lösungen  
 
programming4us programming4us