【发布时间】:2019-12-26 10:28:44
【问题描述】:
我正在开发现有软件(SQL、C#)以提高其效率。在这个项目中,在需要字符串的地方使用 varchar(max)。我想将 varchar(Max) 转换为 varchar(N)。为此目的我阅读了许多比较 varchar(max) Vs varchar(N) 的文章 - 很明显 varchar(N) 的响应时间比 Varchar(Max) 要快。但是我关于存储比较 Varchar(Max) Vs Varchar(N) 的问题)-例如如果我插入“Hello”,数据类型 varchar(Max) 和 varchar(100) 的存储是否相同?如果不是,那么这两种情况有多大区别?
【问题讨论】:
-
(n)varchar(MAX)的存储不同于(n)varchar(x)。MAX数据类型通常与表位于不同的存储位置(不在同一页中)。需要值时会查找这些值。 -
@Larnu 谢谢...我们可以说 varchar(MAX) 比 varchar(N) 占用更多空间..如果文本长度是固定的?
-
"如果文本长度是固定的" 不,它是 varchar,而不是 char。 var是varying的缩写;因为值具有不同的长度。如果您使用的是固定长度的字符串,则需要
char。