我知道从nvarchar转换到varchar时,有些数据将丢失/更改.
但是,将varchar数据类型转换为nvarchar时是否存在数据更改的风险?
解决方法
nvarchar存储unicode字符,它们是varchar字符大小的两倍.所以只要你的nvarchar是你的vchar的两倍,这不会是一个问题.
如果您没有使用ASCII字符范围之外的任何字符(即您没有Unicode字符),则可能仍然可以进行转换
简而言之,确保您的nvarchar长度是您最大的varchar值的两倍,然后进行更改.
因为我似乎已经收到了几个downvote(没有解释),我想说明,当我提到长度以上我的意思是大小,例如所需的存储数据量.请注意我下面的评论,我也将在这里列出:
If you are talking about changing the length with sql then I think you should be ok to have the same length. This is because when you specify the length you do so based on the number of characters and not the actually amount of data that gets stored