我正在开发一个项目,允许用户输入带有参数的SQL查询,SQL查询将在他们决定的一段时间内执行(例如每2个小时执行6个月),然后将结果返回给他们电子邮件地址。
他们会以HTML电子邮件的形式获取它,因此系统基本上做的是运行查询,然后生成HTML然后发送给用户。
我还希望保存这些结果,以便用户可以访问我们的网站并查看以前的结果。
我的问题是 - 我可以保存哪些数据?
我是否使用这些参数保存SQL查询(即日期参数,以便他可以看到与该特定日期相关的结果)。这意味着当用户点击此特定结果时,我需要再次执行查询。
保存当时生成的HTML,并在用户希望看到此结果时显示它?
如果有人能解释每种解决方案的优缺点,我会很感激,哪一种被认为是最好的解决方案。效率最高。
存档可能会有1-2个月的历史,我无法真正预测每个查询将返回的行数。
谢谢!
答案 0 :(得分:1)
如果我要创建这种类型的应用程序,那么
根据我的应用程序,我会根据当前日期,当前时间,日期范围,时间范围等来查找一些常见查询。
常见关键字的一些自动填充。
如果数据经常更改,则无法保存html,生成新的数据是不错的选择
答案 1 :(得分:1)
特别是关于从之前运行的查询中检索结果,我建议保存结果以便以后查看,而不是一次又一次地运行查询。这种方法的主要好处是:
这种方法的缺点是它可能会占用更多的磁盘空间,但除非你的查询返回数百万行,否则这不太可能是一个问题(在这种情况下,html可能不是一个好主意)。 / p>
答案 2 :(得分:1)
关键的区别在于,如果数据发生变化,新查询将返回与之前保存的结果不同的结果,因此您必须确定用户是否应获取最新数据或数据所用内容的快照是
如果相关数据没有变化,则问题是查询是否昂贵,有多少用户将运行它们以及频率,然后您可能决定保存它们而不是重新运行查询,以提高性能。 / p>