软件开发原则,能不通过数据库的坚决别通过数据库,一是数据库处理的数据量太多,而且存储的东西太多直接会影响软件的执行效率;二是万一软件出了问题,需要删除相关数据还得进数据库里面删,若数据库里面的数据做了级联引用那还得专门写存储过程来级联删除,进一步降低软件执行效率,综上所述还是选择第二个方案比较好。
你用的是什么数据库?Access、Sqlite这一类的还是SqlServer、MySql这一类的?
如果是SqlServer这一类的是远程数据库还是本地数据库?
还有你要计算的数据量大概有多少?
需要看详细的代码,去计算时间复杂度。
第二个方案