我们大学正在申请使用Java SE从Excel工作表记录生成PDF文档。我有两种设计数据库的方法。在一种方法中,将有一个表包含大量记录(每年50K)。在其他方法中,将在运行时创建许多表(每年1000个),每个表将包含最多50个记录。 哪种方法相对有效地考虑更好的总体时间性能?
答案 0 :(得分:8)
相同结构的多个表几乎没有意义。
数据库被设计为在几个表中包含许多记录。
答案 1 :(得分:1)
50K记录不是“很多”记录。您没有指定要使用的数据库,但大多数商业级数据库可以处理表中的数百万条记录。 这假设您有适当的索引等。如果您必须继续为您的应用程序创建表,那么您的设计有问题,您需要重新思考。
答案 2 :(得分:0)
50k记录对于数据库来说并不多。如果它是所有相同类型的数据(相同结构),则它属于同一个表。只有在大小和速度成为问题时,您才应考虑将数据分成多个表(或更可能是:不同的服务器)。
答案 3 :(得分:0)
构建关系数据库时,基本规则是避免冗余。
查看您的数据并尝试分离往往会重复的内容。如果您注意到在多个条目中重复的列或一组列,则为它们创建一个新表。这样,您将在查询时获得最佳性能。
否则,如果值在条目中是唯一的,则保持最小表数。
您应该只为关系数据库寻找一些design rules。你也会找到一些例子。