在 SQL 服务器中存储长度不同的文本的最佳方式
Best way to store text with very differernt length in SQL Server
我想将文本存储到 SQL 服务器。我的文本长度非常不同(1-10000 个字符长度)。我想在数据库中存储最小长度的文本。
我的问题:我必须 select 作为列类型吗?
当我们 select 像 varchar(100)
这样的列的类型时,当我们为该列添加值为 null 的行时,数据库大小会增加吗?
例如,我 table 是这样的:
id txt(Varchar(100))
--- -----
1 some text
2 null
当我为 txt 列添加一个空值的行时,数据库大小会增加吗?
varchar
是这里唯一的选项。它由数据库有效地存储,并占用 space 所需的(+开销)。
也就是说,如果您的数据是 100 个字符,那么它使用的存储空间将比您的数据是 1000 个字符时少。
这是一本值得阅读的好书:"Microsoft SQL Server 2008 Internals"
我想将文本存储到 SQL 服务器。我的文本长度非常不同(1-10000 个字符长度)。我想在数据库中存储最小长度的文本。
我的问题:我必须 select 作为列类型吗?
当我们 select 像 varchar(100)
这样的列的类型时,当我们为该列添加值为 null 的行时,数据库大小会增加吗?
例如,我 table 是这样的:
id txt(Varchar(100))
--- -----
1 some text
2 null
当我为 txt 列添加一个空值的行时,数据库大小会增加吗?
varchar
是这里唯一的选项。它由数据库有效地存储,并占用 space 所需的(+开销)。
也就是说,如果您的数据是 100 个字符,那么它使用的存储空间将比您的数据是 1000 个字符时少。
这是一本值得阅读的好书:"Microsoft SQL Server 2008 Internals"