Sql 字节形式的Varchar
在我们的一个项目中,我们的经理坚持使用字节形式的varchar,比如varchar(8)、varchar(16)、varchar(32)、varchar(64)等等Sql 字节形式的Varchar,sql,sql-server,database-design,Sql,Sql Server,Database Design,在我们的一个项目中,我们的经理坚持使用字节形式的varchar,比如varchar(8)、varchar(16)、varchar(32)、varchar(64)等等 如果我们可以猜测大小,但我们可能不知道实际大小,那么这比使用varchar(10)、varchar(11)等更好吗?假设您想在表中存储产品代码。目前,您所拥有的所有产品代码都是5个字符或更少,但将来可能会发生变化。你不可能看到它超过10个,但谁知道呢 您可以将其创建为varchar(10),但如果您错了,那么在将来的某个时间点,您可
如果我们可以猜测大小,但我们可能不知道实际大小,那么这比使用varchar(10)、varchar(11)等更好吗?假设您想在表中存储产品代码。目前,您所拥有的所有产品代码都是5个字符或更少,但将来可能会发生变化。你不可能看到它超过10个,但谁知道呢 您可以将其创建为varchar(10),但如果您错了,那么在将来的某个时间点,您可能必须更改它。如果将其创建为varchar(20),则问题不存在 那么,您是否在浪费空间将其声明为varchar(20)而不是varchar(10)?否,因为SQL server将只使用列包含的字符数(此时为5):所有数据类型varchar(n)实际上意味着“可变长度文本,最大长度为n个字符”
因此,如果定义的长度至少满足您的预期需要,我认为定义的大小并不重要。看看:包括重复的谢谢。谢谢John,我想我正在寻找更详细的性能比较和参考,上面的评论提供了这些。