Y at-il dataloss de convertir de varchar à nvarchar

J'ai une colonne dans SQL Server qui est varchar(MAX) . La colonne a été renseignée avec ce type de données. Je veux maintenant convertir la colonne en nvarchar(MAX) pour accepter les caractères Unicode.

Y at-il une perte de données lorsque je convertis cette colonne de varchar(MAX) à nvachhar(MAX) ?

Chaque caractère qui peut être représenté dans varchar est également représentable dans nvarchar .

Le seul problème de perte de données possible serait si vous avez des valeurs varchar(max) qui sont déjà supérieures à 1 Go.

Dans la plupart des classments, nvarchar utilise 2 octets par caractère et varchar utilise 1 octet par caractère. Doubler la longueur de string d'une string> 1 Go vous ferait évidemment dépasser la limite de 2 Go.

Même alors, je m'attendrais à un message d'erreur plutôt qu'à une troncature silencieuse mais peut-être pourrait-il échouer silencieusement sous certains réglages tels que ANSI_WARNINGS OFF .