nvarchar хранит символы юникода, которые в два раза больше символов varchar.Так что, пока ваш nvarchar по крайней мере вдвое длиннее вашего vchar, это не будет проблемой.
Преобразование другим способом все еще может быть достигнуто, если вы не использовали никаких символов вне диапазона символов ASCII (т.е. выне используйте символы Юникода)
Короче говоря, убедитесь, что длина nvarchar в два раза больше вашего наибольшего значения varchar, а затем внесите изменение.
Как мне кажется, я получилпара отрицательных комментариев по этому вопросу (без объяснения причин), я хочу прояснить, что когда я имею в виду длину выше, я имею в виду размер, например, необходимый объем данных для хранения.Пожалуйста, обратите внимание на мой комментарий ниже, который я также включу здесь:
Если вы говорите об изменении длины с помощью SQL, то я думаю, что вы должны иметь такую же длину.Это потому, что когда вы указываете длину, вы делаете это на основе количества символов, а не фактического объема данных, которые хранятся