模板数据库读取和存储疑问 两个疑问详细解答疑问1:表实际规模:示例几十条,真实标准单表可达上千条,是否还适合一次性全读三张表?先说结论:依旧建议加载阶段全表读取三张表,不建议业务运行时循环查询SQL;但要区分「标准库加载」和「多标准共存」场景场景拆解单套管线标准:CodeTable上千、FieldTable上千、LayerTable几十条,总数据量很小,内存压力完全可以忽略。SQLite是本地文件库,select * from xxx全表读取上千条开销极低;如果运行时业务中,每处理一个管线要素就去SQL查询一次(比如循环根据Code查CodeTable,再根据AttributeTabl查FieldTable,再根据Layer查LayerTable),会产生大量小SQL,反而性能差,尤其批量导入成百上千管线要素的时候。核心开销不在“把全部记录读到内存”,而在“反复数据库交互”。多套标准共存(数据库里有多套标准,不会同时全部启用)这是关键,不能无脑全部加载数据库里所有标准。不是把SQLite库全部数据读入内存;而是:选中某一套标准项目之后,才把该标准下的三张表全部读出,构建一套PipeStandardStore;切换标准的时候,释放旧Store,重新加载新一套。如果数据库内保存多套标准,表内应该有项目/标准标识字段做过滤,读取SQL加上where ProjectId='xxx',只加载当前激活标准的数据集,而不是select *读整个库全部数据。/