Condividi tramite


Definire tabelle e colonne definite dall'utente

Si applica a:SQL Server

Quando l'assembly contenente la definizione del tipo definito dall'utente (UDT) viene registrato in un database di SQL Server, può essere usato in una definizione di colonna. Per altre informazioni, vedere CREATE TYPE.

Creare tabelle con tipi definiti dall'utente

Non esiste una sintassi speciale per la creazione di una colonna definita dall'utente in una tabella. È possibile usare il nome del tipo definito dall'utente in una definizione di colonna come se fosse uno dei tipi di dati intrinseci di SQL Server. L'istruzione CREATE TABLE Transact-SQL seguente crea una tabella denominata Points, con una colonna denominata ID, definita come colonna int colonna Identity e la chiave primaria per la tabella. La seconda colonna è denominata PointValue, con un tipo di dati di Point. Il nome dello schema usato in questo esempio è dbo. Per specificare un nome di schema, è necessario disporre delle autorizzazioni necessarie. Se si omette il nome dello schema, viene utilizzato lo schema predefinito per l'utente del database.

CREATE TABLE dbo.Points
(
    ID INT IDENTITY (1, 1) PRIMARY KEY,
    PointValue Point
);

Creare indici in colonne definite dall'utente

Per indicizzare una colonna con tipo definito dall'utente, sono disponibili due opzioni:

  • Indicizzare il valore completo. In questo caso, se il tipo definito dall'utente è ordinato in modo binario, è possibile creare un indice sull'intera colonna definita dall'utente usando l'istruzione CREATE INDEX Transact-SQL.

  • Indicizzare espressioni dei tipi definiti dall'utente. È possibile creare indici in colonne calcolate persistenti su espressioni dei tipi definiti dall'utente. L'espressione del tipo definito dall'utente può essere un campo, un metodo o una proprietà di un tipo definito dall'utente. L'espressione deve essere deterministica e non deve eseguire accesso ai dati.

Per altre informazioni, vedere CREATE INDEX.