Share via


Utilisation de types définis par l’utilisateur - Définition de tables et de colonnes UDT

S’applique à :SQL Server

Une fois que l’assembly contenant la définition de type défini par l’utilisateur (UDT) a été inscrit dans une base de données Microsoft SQL Server, il peut être utilisé dans une définition de colonne. Pour plus d’informations, consultez CREATE TYPE (Transact-SQL).

Création de tables avec UDT

Il n'existe aucune syntaxe particulière pour la création d'une colonne UDT dans une table. Vous pouvez utiliser le nom de l’UDT dans une définition de colonne comme s’il s’agissait de l’un des types de données intrinsèques SQL Server. L’instruction Transact-SQL CREATE TABLE suivante crée une table nommée Points, avec une colonne nommée ID, qui est définie comme une colonne d’identité int et la clé primaire de la table. La deuxième colonne est nommée PointValue, avec un type de données Point. Le nom de schéma utilisé dans cet exemple est dbo. Notez que vous devez disposer des autorisations nécessaires pour spécifier un nom de schéma. Si vous omettez le nom de schéma, le schéma par défaut de l'utilisateur de base de données est utilisé.

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

Création d'index sur des colonnes UDT

Il existe deux options pour indexer une colonne UDT :

  • Indexez la valeur complète. Dans ce cas, si l’UDT est ordonné binaire, vous pouvez créer un index sur l’ensemble de la colonne UDT à l’aide de l’instruction Transact-SQL CREATE INDEX.

  • Indexez des expressions UDT. Vous pouvez créer des index dans des colonnes calculées persistantes sur des expressions UDT. L'expression UDT peut être un champ, une méthode ou une propriété d'un UDT. L'expression doit être déterministe et ne doit pas accéder aux données.

Pour plus d’informations, consultez CREATE INDEX (Transact-SQL).

Voir aussi

Utilisation de types définis par l’utilisateur dans SQL Server
CREATE TYPE (Transact-SQL)
Types CLR définis par l’utilisateur