varchar和nvarchar SQL Server数据类型之间的主要性能差异是什么?

32 浏览
0 Comments

varchar和nvarchar SQL Server数据类型之间的主要性能差异是什么?

我正在使用 SQL Server 2005 为我的学校的小型 Web 应用程序创建一个数据库。

我看到了一些关于 varcharnvarchar 的看法:

  1. 除非你处理很多国际化数据,否则使用 varchar,否则使用 nvarchar.
  2. 所有情况下都使用 nvarchar

我开始认识到第二种观点的优点。我知道 nvarchar 占用两倍的空间,但这并不是一个巨大的问题,因为这只是为几百个学生存储数据。对我来说,最容易的方法似乎是不用担心它,只允许所有内容使用 nvarchar。或者我错了吗?

admin 更改状态以发布 2023年5月21日
0
0 Comments

始终使用nvarchar。

对于大多数应用程序,您可能永远不需要双字节字符。但是,如果您需要支持双字节语言,并且您的数据库架构只支持单字节,则返回并在整个应用程序中修改真的很昂贵。

将一个应用程序从varchar迁移到nvarchar的成本远高于在大多数应用程序中使用的更多磁盘空间。

0
0 Comments

磁盘空间不是问题...但是内存和性能将是问题。双倍的页面读取,双倍的索引大小,奇怪的LIKE和=常量行为等等。

您是否需要存储中文等脚本?是或不是...

从MS BOL中的"Unicode的存储和性能影响"

编辑:

最近的SO问题突出了nvarchar性能的糟糕表现...

在nvarchar字符串内搜索时,SQL Server使用高CPU

0