我有一个SQLite数据库,其中包含一个包含11列的表,包括8列Text
,其中包含很长的字符串。我需要再添加8个Text
列,这些列可能会也可能不会获得长字符串值。
所以我想知道是否应该将这8个额外的列添加到当前表中,还是创建一个包含外键的新表?
如果我想使用某些查询来搜索数据库中的数据,哪种方式更好?
谢谢。
答案 0 :(得分:1)
您应该在现有表中添加8个列。尝试理解database normalization如果您的数据库是多余的,只需添加一个新表。
答案 1 :(得分:1)
这取决于。如果此表上存在现有查询,并且如果他们执行了"选择*"要获取所有列,查询将在重新评估星号时更改。这可能会也可能不会破坏依赖于查询的软件。 有一种解决方法,包括创建一个包含旧列和新列的新表,然后创建一个包含旧表的名称和列的视图。这种解决方法也有缺点。
正如sadfiesch评论的那样,这里没有规范化问题。
就性能而言,有些情况可以采用两种方式,也可能没有太大差异。