背景:在存储过程中,使用了临时表,进行中间操作,发现性能不佳。
原因:分析存储过程,发现代码最后使用truncate语句清空了临时表,释放空间。
这样数据库统计时,永远按照空表进行统计,相关数据字典信息(包括平均行长度、行记录数等都为空),导致最终执行计划出现问题。
概括:将空间成本转嫁给了时间成本。
建议:如果可以容忍,保留临时表数据或者有代表的样本数据,以供数据库统计,优化执行计划
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/25585951/viewspace-692846/ ,如需转载,请注明出处,否则将追究法律责任。