我使用 MS Sql(2008 或其他)将本地化字符串存储在单个数据表中。大多数字符串都很短,可以用 varchar(200) 表示,而大约 10% 的字符串更长,需要 varchar(5000) 之类的字符串。我的问题是,如果我把它分成两个这样的表,在检索较短的字符串时是否有性能优势:
CREATE TABLE ShortTextTable(ID bigint IDENTITY(1,1) NOT NULL, TextValue nvarchar(200))
CREATE TABLE LongTextTable(ID bigint IDENTITY(1,1) NOT NULL, TextValue nvarchar(4000))
相对:
CREATE TABLE TextTable(ID bigint IDENTITY(1,1) NOT NULL, TextValue nvarchar(4000))
这些数据很少会更新,我只关心读取。