处理SQL服务器数据库中的特殊字符,应该使用varchar还是nvarchar?

To handle special characters in SQL server database, which should be used varchar or nvarchar?

我想问一个简单的问题,要处理我的 Mobile/Tablet 网络应用程序中的特殊字符,我应该使用哪些数据类型?

  1. 可变字符
  2. NVarchar
  3. 文字
  4. NText

编辑:

重要! SQL 服务器的未来版本将删除 ntext、text 和 image 数据类型。避免在新的开发工作中使用这些数据类型,并计划修改当前使用它们的应用程序。请改用 nvarchar(max)、varchar(max) 和 varbinary(max)。 More Detail Here

我们是否应该使用 nVarchar,因为我在某处读到某些设备(例如手机)仍然无法正确处理 Unicode 数据。

请专家给点建议?

1 或 2,具体取决于 "special characters" 您将要保存的内容。就看他们如何 "special" 了。

不过我要说的是,绝对不是 Text,因为它已被弃用。

https://docs.microsoft.com/en-us/sql/t-sql/data-types/ntext-text-and-image-transact-sql?view=sql-server-2017