下面以常见数据库(MySQL、PostgreSQL、SQL Server、Oracle)为例,说明临时表的创建与删除。
CREATE TEMPORARY TABLE temp_user (
id INT,
name VARCHAR(50)
);
✅ 特点:
DROP TEMPORARY TABLE IF EXISTS temp_user;
✅ 推荐显式删除,避免误删普通表
CREATE TEMP TABLE temp_user (
id INT,
name VARCHAR(50)
);
默认行为:
可选:
CREATE TEMP TABLE temp_user
ON COMMIT DROP; -- 事务提交后删除
DROP TABLE IF EXISTS temp_user;
CREATE TABLE #temp_user (
id INT,
name VARCHAR(50)
);
✅ 只在当前会话可见
CREATE TABLE ##temp_user (
id INT,
name VARCHAR(50)
);
✅ 所有会话可见,所有会话断开后删除
DROP TABLE IF EXISTS #temp_user;
CREATE GLOBAL TEMPORARY TABLE temp_user (
id NUMBER,
name VARCHAR2(50)
)
ON COMMIT DELETE ROWS; -- 提交后清空数据
或
ON COMMIT PRESERVE ROWS; -- 会话结束清空数据
DROP TABLE temp_user;
✅ Oracle 临时表结构是持久的,仅数据临时
IF EXISTS 防止报错如果你有特定数据库版本或使用场景(如存储过程、数据分析),我可以给你更精准的示例。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。