临时表 6 个高频坑要点
- 连接池复用连接,上一条业务的临时表残留在新请求里
- 临时表遮蔽普通表,调试时以为改的是正式表其实改了临时表
- MEMORY 引擎临时表碰到 TEXT/BLOB 直接报错
- 数据过大溢出磁盘,原本飞快的中转变成慢查询
- 忘了主动 DROP,长连接里堆出一堆临时表占内存
- 以为 SHOW TABLES 能看到临时表,排查时满世界找表
临时表 6 个高频坑示例
-- 脚本/存储过程开头先清残留,避免串数据与遮蔽
DROP TEMPORARY TABLE IF EXISTS tmp_report;
CREATE TEMPORARY TABLE tmp_report (
user_id INT NOT NULL,
total DECIMAL(12,2)
);
避坑提醒:写存储过程或长脚本时,开头先 DROP TEMPORARY TABLE IF EXISTS 同名表再建,能规避残留与遮蔽问题。