Ricerca…


introduzione

I tipi di tabella definiti dall'utente (in breve UDT) sono tipi di dati che consentono all'utente di definire una struttura di tabella. I tipi di tabella definiti dall'utente supportano chiavi primarie, vincoli univoci e valori predefiniti.

Osservazioni

Gli UDT hanno le seguenti restrizioni:

  • non può essere usato come una colonna in una tabella o in un campo in tipi strutturati definiti dall'utente
  • non è possibile creare un indice non cluster in un UDT a meno che l'indice non sia il risultato della creazione di un vincolo PRIMARY KEY o UNIQUE sull'UDT
  • La definizione UDT NON PU be essere modificata dopo la sua creazione

creando un UDT con una singola colonna int che è anche una chiave primaria

CREATE TYPE dbo.Ids as TABLE
(
    Id int PRIMARY KEY
)

Creazione di un UDT con più colonne

CREATE TYPE MyComplexType as TABLE
(
    Id int,
    Name varchar(10)
)

Creazione di un UDT con un vincolo univoco:

CREATE TYPE MyUniqueNamesType as TABLE
(
    FirstName varchar(10),
    LastName varchar(10),
    UNIQUE (FirstName,LastName)
)

Nota: i vincoli nei tipi di tabella definiti dall'utente non possono essere nominati.

Creazione di un UDT con una chiave primaria e una colonna con un valore predefinito:

CREATE TYPE MyUniqueNamesType as TABLE
(
    FirstName varchar(10),
    LastName varchar(10),
    CreateDate datetime default GETDATE()
    PRIMARY KEY (FirstName,LastName)
)


Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow