nchar et nvarchar (Transact-SQL)

Données de type chaîne qui sont des données Unicode de longueur fixe, nchar, ou de longueur variable, nvarchar, et qui utilisent le jeu de caractères UNICODE UCS-2.

  • nchar [ ( n ) ]
    Données de type chaîne, Unicode, de longueur fixe. n définit la longueur de chaîne et doit compris entre 1 et 4 000. La taille de stockage est le double de n octets. Lorsque la page de codes du classement utilise des caractères sur deux octets, la taille de stockage reste de n octets. En fonction de la chaîne, la taille de stockage de n octets peut être inférieure à la valeur spécifiée pour n. Les synonymes ISO de nchar sont national char et national character.

  • nvarchar [ ( n | max ) ]
    Données de type chaîne Unicode d'une longueur variable. n définit la longueur de chaîne et doit être compris entre 1 et 4 000. max indique que la taille maximale de stockage est égale à 2^31-1 octets (2 Go). La taille de stockage, en octets, est le double de la longueur réelle des données entrée plus 2 octets. Les synonymes ISO de nvarchar sont national char varying et national character varying.

Notes

Lorsque la valeur de n n'est spécifiée ni dans une définition de données, ni dans une instruction de déclaration de variable, la longueur par défaut est 1. Lorsque la valeur de n n'est pas précisée dans la fonction CAST, la longueur par défaut est 30.

Utilisez nchar si vous pensez que les tailles des entrées des données des colonnes seront similaires.

Utilisez nvarchar si vous pensez que les tailles des entrées des données des colonnes varieront considérablement.

sysname est un type de données défini par l'utilisateur fourni par le système et présente la même fonctionnalité que nvarchar(128), à la différence qu'il n'accepte pas les valeurs NULL. sysname est utilisé pour faire référence aux objets de base de données.

Les objets qui utilisent nchar ou nvarchar reçoivent le classement par défaut de la base de données, sauf si un classement spécifique est affecté à l'aide de la clause COLLATE.

SET ANSI_PADDING a toujours la valeur ON pour nchar et nvarchar. SET ANSI_PADDING OFF ne s'applique pas aux types de données nchar et nvarchar.