SQL

nvarchar(50)与nvarchar(max)的含义

发布于 2021-03-11 17:39:35

如果下面两个表的唯一区别是nvarchar(50)vs,nvarchar(max)并且每个字段中的字符串范围是1到50个字符,那么它们在存储和性能方面的一般区别是什么?这是在SQL
Server 2005中。

表格1

firstname nvarchar (50)
lastname nvarchar (50)
username nvarchar (50)

表2

firstname nvarchar (max)
lastname nvarchar (max)
username nvarchar (max)
关注者
0
被浏览
526
1 个回答
  • 面试哥
    面试哥 2021-03-11
    为面试而生,有面试问题,就找面试哥。

    如果保证字符串长度在1到50个字符之间,则使用varchar(X)与varchar(MAX)可以在最大长度为X的字符串上运行相同的查询。此外,您不能在varchar(MAX)字段上创建索引。

    一旦您的行的长度值超过8000个字符,就需要解决其他性能问题(这些行基本上被视为TEXT而不是varchar(n))。尽管作为比较,这并不十分相关,因为对于长度超过8000的字符串,没有varchar(N)选项。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看